@zat-design/sisyphus-react 3.4.12 → 3.4.13

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 (32) hide show
  1. package/README.md +8 -1
  2. package/dist/index.esm.css +1 -1
  3. package/dist/less.esm.css +1 -1
  4. package/es/ProEditTable/components/RenderField/index.js +1 -0
  5. package/es/ProEditTable/propsType.d.ts +1 -0
  6. package/es/ProEditTable/style/index.less +1 -1
  7. package/es/ProEditTable/utils/config.js +2 -2
  8. package/es/ProForm/components/base/InputNumber/index.js +8 -1
  9. package/es/ProForm/components/base/TextArea/index.js +2 -1
  10. package/es/ProForm/components/combination/Group/component/ComRender.js +1 -1
  11. package/es/ProForm/components/combination/ProNumberRange/index.js +2 -2
  12. package/es/ProForm/components/combination/ProRangeLimit/index.js +9 -11
  13. package/es/ProForm/utils/index.js +2 -2
  14. package/es/ProForm/utils/useShouldUpdate.js +5 -3
  15. package/es/ProSelect/index.js +31 -12
  16. package/es/ProSelect/propsType.d.ts +2 -0
  17. package/es/ProTree/components/Tree.js +1 -1
  18. package/lib/ProEditTable/components/RenderField/index.js +1 -0
  19. package/lib/ProEditTable/propsType.d.ts +1 -0
  20. package/lib/ProEditTable/style/index.less +1 -1
  21. package/lib/ProEditTable/utils/config.js +2 -2
  22. package/lib/ProForm/components/base/InputNumber/index.js +8 -1
  23. package/lib/ProForm/components/base/TextArea/index.js +2 -1
  24. package/lib/ProForm/components/combination/Group/component/ComRender.js +1 -1
  25. package/lib/ProForm/components/combination/ProNumberRange/index.js +2 -2
  26. package/lib/ProForm/components/combination/ProRangeLimit/index.js +9 -11
  27. package/lib/ProForm/utils/index.js +2 -2
  28. package/lib/ProForm/utils/useShouldUpdate.js +5 -3
  29. package/lib/ProSelect/index.js +29 -10
  30. package/lib/ProSelect/propsType.d.ts +2 -0
  31. package/lib/ProTree/components/Tree.js +1 -1
  32. package/package.json +1 -1
package/README.md CHANGED
@@ -92,9 +92,16 @@ render(<App />, document.getElementById('root'));
92
92
  5. 执行 yarn build 成功
93
93
  6. 执行 yarn release
94
94
 
95
-
96
95
  ### 发布
97
96
 
98
97
  npm publish --registry https://registry.npmjs.org --access=public
99
98
 
99
+ ### 发布内网库
100
100
 
101
+ 1. `package.json`里增加配置
102
+ ```
103
+ "publishConfig": {
104
+ "registry": "https://npm.zhonganinfo.com"
105
+ },
106
+ ```
107
+ 2. 之后使用 `npm publish` 发布, 如果提示登录使用域账号登录
@@ -4362,7 +4362,7 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
4362
4362
  }
4363
4363
  .pro-edit-table .ant-table-tbody > .is-editing:not(.ant-table-measure-row) > td {
4364
4364
  border-bottom: 0;
4365
- vertical-align: top;
4365
+ vertical-align: middle;
4366
4366
  }
4367
4367
  .pro-edit-table .ant-table-tbody tr:nth-child(n) > td {
4368
4368
  background-color: var(--zaui-base-bg, #ffffff);
package/dist/less.esm.css CHANGED
@@ -4362,7 +4362,7 @@ span.ant-input-group-compact.pro-range-limit .forever-checkbox {
4362
4362
  }
4363
4363
  .pro-edit-table .ant-table-tbody > .is-editing:not(.ant-table-measure-row) > td {
4364
4364
  border-bottom: 0;
4365
- vertical-align: top;
4365
+ vertical-align: middle;
4366
4366
  }
4367
4367
  .pro-edit-table .ant-table-tbody tr:nth-child(n) > td {
4368
4368
  background-color: var(--zaui-base-bg, #ffffff);
@@ -101,6 +101,7 @@ var RenderField = function RenderField(_ref) {
101
101
  var options = {
102
102
  index: index,
103
103
  form: form,
104
+ name: column === null || column === void 0 ? void 0 : column.name,
104
105
  namePath: [].concat(_toConsumableArray(namePath), [index])
105
106
  };
106
107
  // 行参数
@@ -16,6 +16,7 @@ export interface OptionsProps {
16
16
  index: number;
17
17
  form: FormInstance;
18
18
  namePath: NamePath;
19
+ name: NamePath;
19
20
  }
20
21
  export interface SummaryColumnProps {
21
22
  key: string;
@@ -222,7 +222,7 @@
222
222
 
223
223
  .@{ant-prefix}-table-tbody>.is-editing:not(.@{ant-prefix}-table-measure-row)>td {
224
224
  border-bottom : 0;
225
- vertical-align: top;
225
+ vertical-align: middle;
226
226
  }
227
227
 
228
228
  .@{ant-prefix}-table-tbody tr:nth-child(n)>td {
@@ -1,7 +1,7 @@
1
1
  import _regeneratorRuntime from "@babel/runtime/helpers/esm/regeneratorRuntime";
2
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
2
  import _typeof from "@babel/runtime/helpers/esm/typeof";
4
3
  import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
4
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
5
5
  import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
6
6
  import "antd/es/message/style";
7
7
  import _message from "antd/es/message";
@@ -57,7 +57,7 @@ export var actions = {
57
57
  delete record.isEditing;
58
58
  }
59
59
  // 复制当前行数据
60
- form.setFieldValue(virtualRowName, record);
60
+ form.setFieldValue(virtualRowName, _objectSpread({}, record));
61
61
  setState({
62
62
  editingKeys: nextEditingKeys
63
63
  });
@@ -234,7 +234,14 @@ var InputNumber = function InputNumber(props) {
234
234
  var handleBlur = function handleBlur(e) {
235
235
  var _e$target, _e$target2;
236
236
  activateRef.current = false;
237
- var value = _parser(e === null || e === void 0 ? void 0 : (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.value, props.precision);
237
+ var value = e === null || e === void 0 ? void 0 : (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.value;
238
+ if (_max !== undefined && value > _max) {
239
+ value = _max;
240
+ }
241
+ if (_min !== undefined && value < _min) {
242
+ value = _min;
243
+ }
244
+ value = _parser(String(value), props.precision);
238
245
  var limit = {
239
246
  min: Number(_min),
240
247
  max: Number(_max)
@@ -14,6 +14,7 @@ import Container from '../../Container';
14
14
  import './index.less';
15
15
  var TextArea = _Input.TextArea;
16
16
  var TextAreaDef = function TextAreaDef(props) {
17
+ var _props$style;
17
18
  var placeholder = props.placeholder,
18
19
  otherProps = props.otherProps,
19
20
  className = props.className,
@@ -42,7 +43,7 @@ var TextAreaDef = function TextAreaDef(props) {
42
43
  showCount: true,
43
44
  autoComplete: "off",
44
45
  placeholder: placeholder || "".concat(locale.ProForm.inputPlaceholder).concat(label || ''),
45
- autoSize: true
46
+ autoSize: !(props === null || props === void 0 ? void 0 : (_props$style = props.style) === null || _props$style === void 0 ? void 0 : _props$style.height)
46
47
  }, omit(initialConfig, ['trim'])), rest), {}, {
47
48
  className: _className
48
49
  }));
@@ -45,7 +45,7 @@ var ComRender = function ComRender(props) {
45
45
  var mergedGetValueProps = getValueProps || function (val) {
46
46
  return _defineProperty({}, valuePropName, val);
47
47
  };
48
- var _props = mergedGetValueProps(props.value);
48
+ var _props = mergedGetValueProps(fieldProps.value);
49
49
  var componentProps = _objectSpread(_objectSpread(_objectSpread({}, fieldProps), rest), _props);
50
50
  var Component = component ? ( /*#__PURE__*/React.cloneElement(component, _objectSpread({}, componentProps))) : _jsx(TypeComponent, _objectSpread({}, componentProps));
51
51
  var Com = getComRender(Component, props, componentProps);
@@ -98,13 +98,13 @@ var ProNumberRange = function ProNumberRange(props) {
98
98
  case 'percentage':
99
99
  return _jsx(Container, {
100
100
  viewEmpty: viewEmpty,
101
- children: "".concat(formatPercent(value[0], precision || decimal), " ").concat(separator, " ").concat(formatPercent(value[1], precision || decimal))
101
+ children: "".concat(formatAmount(value[0], precision || decimal), " ").concat(separator, " ").concat(formatAmount(value[1], precision || decimal))
102
102
  });
103
103
  // 千分比
104
104
  case 'permillage':
105
105
  return _jsx(Container, {
106
106
  viewEmpty: viewEmpty,
107
- children: "".concat(formatPerMill(value[0], precision || decimal), " ").concat(separator, " ").concat(formatPerMill(value[1], precision || decimal))
107
+ children: "".concat(formatAmount(value[0], precision || decimal), " ").concat(separator, " ").concat(formatAmount(value[1], precision || decimal))
108
108
  });
109
109
  // 千分位
110
110
  case 'amount':
@@ -119,20 +119,18 @@ var ProRangeLimit = function ProRangeLimit(props) {
119
119
  var handleForeverChange = function handleForeverChange(e) {
120
120
  var foreverStr = e.target.checked ? 'Y' : 'N';
121
121
  var _ref8 = value || [],
122
- _ref9 = _slicedToArray(_ref8, 2),
123
- start = _ref9[0],
124
- end = _ref9[1];
122
+ _ref9 = _slicedToArray(_ref8, 1),
123
+ start = _ref9[0];
124
+ var _ref10 = value || [],
125
+ _ref11 = _slicedToArray(_ref10, 2),
126
+ end = _ref11[1];
125
127
  if (e.target.checked) {
126
- var _rest$allowEmpty, _start, _end;
127
- if (((_rest$allowEmpty = rest.allowEmpty) === null || _rest$allowEmpty === void 0 ? void 0 : _rest$allowEmpty[0]) === true) {
128
- start = null;
129
- } else {
130
- start = start || moment().startOf('day');
131
- }
128
+ var _end;
132
129
  end = foreverMoment;
133
- onChange([start, end, e.target.checked], [(_start = start) === null || _start === void 0 ? void 0 : _start.format(format), (_end = end) === null || _end === void 0 ? void 0 : _end.format(format), foreverStr]);
130
+ onChange([start, end, e.target.checked], [start === null || start === void 0 ? void 0 : start.format(format), (_end = end) === null || _end === void 0 ? void 0 : _end.format(format), foreverStr]);
134
131
  } else {
135
- onChange(null);
132
+ // 不清除起期时间
133
+ onChange([start, null]);
136
134
  }
137
135
  };
138
136
  return _jsxs(_Input.Group, {
@@ -3,7 +3,7 @@ import _createForOfIteratorHelper from "@babel/runtime/helpers/esm/createForOfIt
3
3
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
4
4
  import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
5
5
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
6
- import { useState } from 'react';
6
+ import React, { useState } from 'react';
7
7
  import _, { isObject, isFunction, cloneDeep, get, set, omit, isNaN } from 'lodash';
8
8
  import moment from 'moment';
9
9
  export var getLayout = function getLayout(params) {
@@ -323,7 +323,7 @@ export function getArrayBeforeNumber(arr) {
323
323
  }
324
324
  // 自定义深比对 如果两边都是函数类型则认为相等
325
325
  export var customEqualForFun = function customEqualForFun(value, other) {
326
- if (isFunction(value) && isFunction(other)) {
326
+ if (isFunction(value) && isFunction(other) || /*#__PURE__*/React.isValidElement(value) && /*#__PURE__*/React.isValidElement(other)) {
327
327
  return true;
328
328
  }
329
329
  };
@@ -181,12 +181,14 @@ var useShouldUpdate = function useShouldUpdate(props) {
181
181
  // ) {
182
182
  // form.validateFields([name]);
183
183
  // }
184
- if (_show !== showRef.current || _disabled !== disabledRef.current || _required !== requiredRef.current || !isEqualWith(rulesRef.current, _rules, customEqualForFun) || !isEqualWith(fieldPropsRef.current, _fieldProps, customEqualForFun) || !isEqualWith(originComponentRef.current, _component, customEqualForFun) || equalDependencies(dependencies, prevValues, _currentValues)) {
184
+ if (_show !== showRef.current || _disabled !== disabledRef.current || _required !== requiredRef.current || !isEqualWith(rulesRef.current, _rules, customEqualForFun) || !isEqualWith(fieldPropsRef.current, _fieldProps, customEqualForFun) ||
185
+ // !isEqualWith(originComponentRef.current, _component, customEqualForFun) ||
186
+ equalDependencies(dependencies, prevValues, _currentValues)) {
185
187
  showRef.current = _show;
186
188
  disabledRef.current = _disabled;
187
189
  requiredRef.current = _required;
188
- rulesRef.current = _rules || [];
189
- originComponentRef.current = _component;
190
+ rulesRef.current = _rules;
191
+ // originComponentRef.current = _component;
190
192
  fieldPropsRef.current = _fieldProps;
191
193
  reRender({});
192
194
  return false;
@@ -9,10 +9,10 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
9
9
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
10
10
  import "antd/es/select/style";
11
11
  import _Select from "antd/es/select";
12
- var _excluded = ["dataSource", "defaultDisableValue", "useRequest", "fieldNames", "tooltip", "otherProps", "labelInValue", "filterInList", "scrollFollowParent", "defaultOne", "onSearch", "optionRender", "onChange", "updateDataSource", "transformResponse", "isView"];
12
+ var _excluded = ["dataSource", "defaultDisableValue", "useRequest", "fieldNames", "tooltip", "otherProps", "labelInValue", "filterInList", "scrollFollowParent", "defaultOne", "onSearch", "optionRender", "onChange", "updateDataSource", "transformResponse", "isView", "viewportReady"];
13
13
  import { jsx as _jsx } from "react/jsx-runtime";
14
- import { useDeepCompareEffect, useRequest as useRequestFunc } from 'ahooks';
15
- import React, { useImperativeHandle, useState, forwardRef } from 'react';
14
+ import { useDeepCompareEffect, useInViewport, useRequest as useRequestFunc } from 'ahooks';
15
+ import React, { useImperativeHandle, useState, forwardRef, useRef, useEffect } from 'react';
16
16
  import { isFunction, isObject, isString, omit, cloneDeep, isNumber } from 'lodash';
17
17
  import { useProConfig } from '../ProConfigProvider';
18
18
  import Container from '../ProForm/components/Container';
@@ -54,7 +54,18 @@ export var ProSelect = function ProSelect(props, ref) {
54
54
  updateDataSource = props.updateDataSource,
55
55
  transformResponse = props.transformResponse,
56
56
  isViewPro = props.isView,
57
+ _props$viewportReady = props.viewportReady,
58
+ viewportReady = _props$viewportReady === void 0 ? false : _props$viewportReady,
57
59
  selectProps = _objectWithoutProperties(props, _excluded);
60
+ /** 是否在可视区域出现过 */
61
+ var _useState = useState(false),
62
+ _useState2 = _slicedToArray(_useState, 2),
63
+ viewFlag = _useState2[0],
64
+ setViewFlag = _useState2[1];
65
+ var refSelect = useRef();
66
+ var _useInViewport = useInViewport(refSelect),
67
+ _useInViewport2 = _slicedToArray(_useInViewport, 1),
68
+ inViewport = _useInViewport2[0];
58
69
  selectProps.showCodeName = (_selectProps$showCode = selectProps.showCodeName) !== null && _selectProps$showCode !== void 0 ? _selectProps$showCode : showCodeName;
59
70
  var value = props.value;
60
71
  var _ref2 = ProForm.useFieldProps() || {},
@@ -65,15 +76,15 @@ export var ProSelect = function ProSelect(props, ref) {
65
76
  code = fieldNames.value;
66
77
  label = fieldNames.label;
67
78
  }
68
- var _useState = useState(dataSource || []),
69
- _useState2 = _slicedToArray(_useState, 2),
70
- selectList = _useState2[0],
71
- setSelectList = _useState2[1];
72
- // 用来控制只有第一次才会设置 defaultOne 属性、🔒
73
- var _useState3 = useState(false),
79
+ var _useState3 = useState(dataSource || []),
74
80
  _useState4 = _slicedToArray(_useState3, 2),
75
- isDefaultOne = _useState4[0],
76
- setIsDefaultOne = _useState4[1];
81
+ selectList = _useState4[0],
82
+ setSelectList = _useState4[1];
83
+ // 用来控制只有第一次才会设置 defaultOne 属性、🔒
84
+ var _useState5 = useState(false),
85
+ _useState6 = _slicedToArray(_useState5, 2),
86
+ isDefaultOne = _useState6[0],
87
+ setIsDefaultOne = _useState6[1];
77
88
  var OptionRender = optionRender;
78
89
  var defaultOnSuccessFun = function defaultOnSuccessFun(res) {
79
90
  var _res$status = res.status,
@@ -134,8 +145,16 @@ export var ProSelect = function ProSelect(props, ref) {
134
145
  if (manual) {
135
146
  return;
136
147
  }
148
+ if (viewportReady && !viewFlag) {
149
+ return;
150
+ }
137
151
  fetchFunction.run(defaultParams);
138
- }, [useRequest === null || useRequest === void 0 ? void 0 : useRequest.options, defaultDisableValue]);
152
+ }, [useRequest === null || useRequest === void 0 ? void 0 : useRequest.options, defaultDisableValue, viewFlag]);
153
+ useEffect(function () {
154
+ if (inViewport && !viewFlag && viewportReady) {
155
+ setViewFlag(true);
156
+ }
157
+ }, [inViewport]);
139
158
  // disable默认值
140
159
  if (defaultDisableValue) {
141
160
  return _jsx("span", {
@@ -10,6 +10,8 @@ export interface DataOption {
10
10
  export interface PropSelectProps extends Omit<SelectProps, 'onSearch'> {
11
11
  /** 是否查看模式 */
12
12
  isView?: boolean;
13
+ /** 是否开启组件在可视区域中才发起useRequest请求 默认 false */
14
+ viewportReady?: boolean;
13
15
  /** 默认数组第一项 */
14
16
  defaultOne?: boolean;
15
17
  /** 数据源 */
@@ -355,7 +355,7 @@ function List(props) {
355
355
  }
356
356
  return _jsx("div", {
357
357
  className: disabledMode === 'hide' ? 'hide-disable-node' : '',
358
- children: (_treeData === null || _treeData === void 0 ? void 0 : _treeData.length) ? _jsx(_Tree, _objectSpread(_objectSpread(_objectSpread({}, others), expandedKeys), {}, {
358
+ children: (_treeData === null || _treeData === void 0 ? void 0 : _treeData.length) ? _jsx(_Tree, _objectSpread(_objectSpread(_objectSpread({}, others), additionProps), {}, {
359
359
  disabled: disabled,
360
360
  style: {
361
361
  width: '100%'
@@ -104,6 +104,7 @@ var RenderField = function RenderField(_ref) {
104
104
  var options = {
105
105
  index: index,
106
106
  form: form,
107
+ name: column === null || column === void 0 ? void 0 : column.name,
107
108
  namePath: [].concat((0, _toConsumableArray2.default)(namePath), [index])
108
109
  };
109
110
  // 行参数
@@ -16,6 +16,7 @@ export interface OptionsProps {
16
16
  index: number;
17
17
  form: FormInstance;
18
18
  namePath: NamePath;
19
+ name: NamePath;
19
20
  }
20
21
  export interface SummaryColumnProps {
21
22
  key: string;
@@ -222,7 +222,7 @@
222
222
 
223
223
  .@{ant-prefix}-table-tbody>.is-editing:not(.@{ant-prefix}-table-measure-row)>td {
224
224
  border-bottom : 0;
225
- vertical-align: top;
225
+ vertical-align: middle;
226
226
  }
227
227
 
228
228
  .@{ant-prefix}-table-tbody tr:nth-child(n)>td {
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.iconMap = exports.defaultToolbarKeys = exports.defaultSingleActionKeys = exports.defaultMultipleActionKeys = exports.defaultEditingActionKeys = exports.defaultBtnNameMap = exports.actions = void 0;
8
8
  var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
9
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
11
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
12
12
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
13
  var _jsxRuntime = require("react/jsx-runtime");
14
14
  var _icons = require("@ant-design/icons");
@@ -63,7 +63,7 @@ var actions = exports.actions = {
63
63
  delete record.isEditing;
64
64
  }
65
65
  // 复制当前行数据
66
- form.setFieldValue(virtualRowName, record);
66
+ form.setFieldValue(virtualRowName, (0, _objectSpread2.default)({}, record));
67
67
  setState({
68
68
  editingKeys: nextEditingKeys
69
69
  });
@@ -238,7 +238,14 @@ var InputNumber = function InputNumber(props) {
238
238
  var handleBlur = function handleBlur(e) {
239
239
  var _e$target, _e$target2;
240
240
  activateRef.current = false;
241
- var value = _parser(e === null || e === void 0 ? void 0 : (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.value, props.precision);
241
+ var value = e === null || e === void 0 ? void 0 : (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.value;
242
+ if (_max !== undefined && value > _max) {
243
+ value = _max;
244
+ }
245
+ if (_min !== undefined && value < _min) {
246
+ value = _min;
247
+ }
248
+ value = _parser(String(value), props.precision);
242
249
  var limit = {
243
250
  min: Number(_min),
244
251
  max: Number(_max)
@@ -20,6 +20,7 @@ require("./index.less");
20
20
  var _excluded = ["placeholder", "otherProps", "className", "tooltip"];
21
21
  var TextArea = _antd.Input.TextArea;
22
22
  var TextAreaDef = function TextAreaDef(props) {
23
+ var _props$style;
23
24
  var placeholder = props.placeholder,
24
25
  otherProps = props.otherProps,
25
26
  className = props.className,
@@ -48,7 +49,7 @@ var TextAreaDef = function TextAreaDef(props) {
48
49
  showCount: true,
49
50
  autoComplete: "off",
50
51
  placeholder: placeholder || "".concat(_locale.default.ProForm.inputPlaceholder).concat(label || ''),
51
- autoSize: true
52
+ autoSize: !(props === null || props === void 0 ? void 0 : (_props$style = props.style) === null || _props$style === void 0 ? void 0 : _props$style.height)
52
53
  }, (0, _lodash.omit)(initialConfig, ['trim'])), rest), {}, {
53
54
  className: _className
54
55
  }));
@@ -53,7 +53,7 @@ var ComRender = function ComRender(props) {
53
53
  var mergedGetValueProps = getValueProps || function (val) {
54
54
  return (0, _defineProperty2.default)({}, valuePropName, val);
55
55
  };
56
- var _props = mergedGetValueProps(props.value);
56
+ var _props = mergedGetValueProps(fieldProps.value);
57
57
  var componentProps = (0, _objectSpread3.default)((0, _objectSpread3.default)((0, _objectSpread3.default)({}, fieldProps), rest), _props);
58
58
  var Component = component ? ( /*#__PURE__*/_react.default.cloneElement(component, (0, _objectSpread3.default)({}, componentProps))) : (0, _jsxRuntime.jsx)(TypeComponent, (0, _objectSpread3.default)({}, componentProps));
59
59
  var Com = getComRender(Component, props, componentProps);
@@ -102,13 +102,13 @@ var ProNumberRange = function ProNumberRange(props) {
102
102
  case 'percentage':
103
103
  return (0, _jsxRuntime.jsx)(_Container.default, {
104
104
  viewEmpty: viewEmpty,
105
- children: "".concat(formatPercent(value[0], precision || decimal), " ").concat(separator, " ").concat(formatPercent(value[1], precision || decimal))
105
+ children: "".concat(formatAmount(value[0], precision || decimal), " ").concat(separator, " ").concat(formatAmount(value[1], precision || decimal))
106
106
  });
107
107
  // 千分比
108
108
  case 'permillage':
109
109
  return (0, _jsxRuntime.jsx)(_Container.default, {
110
110
  viewEmpty: viewEmpty,
111
- children: "".concat(formatPerMill(value[0], precision || decimal), " ").concat(separator, " ").concat(formatPerMill(value[1], precision || decimal))
111
+ children: "".concat(formatAmount(value[0], precision || decimal), " ").concat(separator, " ").concat(formatAmount(value[1], precision || decimal))
112
112
  });
113
113
  // 千分位
114
114
  case 'amount':
@@ -121,20 +121,18 @@ var ProRangeLimit = function ProRangeLimit(props) {
121
121
  var handleForeverChange = function handleForeverChange(e) {
122
122
  var foreverStr = e.target.checked ? 'Y' : 'N';
123
123
  var _ref8 = value || [],
124
- _ref9 = (0, _slicedToArray2.default)(_ref8, 2),
125
- start = _ref9[0],
126
- end = _ref9[1];
124
+ _ref9 = (0, _slicedToArray2.default)(_ref8, 1),
125
+ start = _ref9[0];
126
+ var _ref10 = value || [],
127
+ _ref11 = (0, _slicedToArray2.default)(_ref10, 2),
128
+ end = _ref11[1];
127
129
  if (e.target.checked) {
128
- var _rest$allowEmpty, _start, _end;
129
- if (((_rest$allowEmpty = rest.allowEmpty) === null || _rest$allowEmpty === void 0 ? void 0 : _rest$allowEmpty[0]) === true) {
130
- start = null;
131
- } else {
132
- start = start || (0, _moment.default)().startOf('day');
133
- }
130
+ var _end;
134
131
  end = foreverMoment;
135
- onChange([start, end, e.target.checked], [(_start = start) === null || _start === void 0 ? void 0 : _start.format(format), (_end = end) === null || _end === void 0 ? void 0 : _end.format(format), foreverStr]);
132
+ onChange([start, end, e.target.checked], [start === null || start === void 0 ? void 0 : start.format(format), (_end = end) === null || _end === void 0 ? void 0 : _end.format(format), foreverStr]);
136
133
  } else {
137
- onChange(null);
134
+ // 不清除起期时间
135
+ onChange([start, null]);
138
136
  }
139
137
  };
140
138
  return (0, _jsxRuntime.jsxs)(_antd.Input.Group, {
@@ -21,7 +21,7 @@ var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime
21
21
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
22
22
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
23
23
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
24
- var _react = require("react");
24
+ var _react = _interopRequireWildcard(require("react"));
25
25
  var _lodash = _interopRequireWildcard(require("lodash"));
26
26
  var _moment = _interopRequireDefault(require("moment"));
27
27
  var getLayout = exports.getLayout = function getLayout(params) {
@@ -341,7 +341,7 @@ function getArrayBeforeNumber(arr) {
341
341
  }
342
342
  // 自定义深比对 如果两边都是函数类型则认为相等
343
343
  var customEqualForFun = exports.customEqualForFun = function customEqualForFun(value, other) {
344
- if ((0, _lodash.isFunction)(value) && (0, _lodash.isFunction)(other)) {
344
+ if ((0, _lodash.isFunction)(value) && (0, _lodash.isFunction)(other) || /*#__PURE__*/_react.default.isValidElement(value) && /*#__PURE__*/_react.default.isValidElement(other)) {
345
345
  return true;
346
346
  }
347
347
  };
@@ -188,12 +188,14 @@ var useShouldUpdate = function useShouldUpdate(props) {
188
188
  // ) {
189
189
  // form.validateFields([name]);
190
190
  // }
191
- if (_show !== showRef.current || _disabled !== disabledRef.current || _required !== requiredRef.current || !(0, _lodash.isEqualWith)(rulesRef.current, _rules, _index.customEqualForFun) || !(0, _lodash.isEqualWith)(fieldPropsRef.current, _fieldProps, _index.customEqualForFun) || !(0, _lodash.isEqualWith)(originComponentRef.current, _component, _index.customEqualForFun) || (0, _index.equalDependencies)(dependencies, prevValues, _currentValues)) {
191
+ if (_show !== showRef.current || _disabled !== disabledRef.current || _required !== requiredRef.current || !(0, _lodash.isEqualWith)(rulesRef.current, _rules, _index.customEqualForFun) || !(0, _lodash.isEqualWith)(fieldPropsRef.current, _fieldProps, _index.customEqualForFun) ||
192
+ // !isEqualWith(originComponentRef.current, _component, customEqualForFun) ||
193
+ (0, _index.equalDependencies)(dependencies, prevValues, _currentValues)) {
192
194
  showRef.current = _show;
193
195
  disabledRef.current = _disabled;
194
196
  requiredRef.current = _required;
195
- rulesRef.current = _rules || [];
196
- originComponentRef.current = _component;
197
+ rulesRef.current = _rules;
198
+ // originComponentRef.current = _component;
197
199
  fieldPropsRef.current = _fieldProps;
198
200
  reRender({});
199
201
  return false;
@@ -21,7 +21,7 @@ var _ = require("..");
21
21
  var _locale = _interopRequireDefault(require("../locale"));
22
22
  var _utils = require("./utils");
23
23
  require("./index.less");
24
- var _excluded = ["dataSource", "defaultDisableValue", "useRequest", "fieldNames", "tooltip", "otherProps", "labelInValue", "filterInList", "scrollFollowParent", "defaultOne", "onSearch", "optionRender", "onChange", "updateDataSource", "transformResponse", "isView"];
24
+ var _excluded = ["dataSource", "defaultDisableValue", "useRequest", "fieldNames", "tooltip", "otherProps", "labelInValue", "filterInList", "scrollFollowParent", "defaultOne", "onSearch", "optionRender", "onChange", "updateDataSource", "transformResponse", "isView", "viewportReady"];
25
25
  var Option = _antd.Select.Option;
26
26
  var ProSelect = exports.ProSelect = function ProSelect(props, ref) {
27
27
  var _selectProps$showCode, _locale$ProSelect;
@@ -55,7 +55,18 @@ var ProSelect = exports.ProSelect = function ProSelect(props, ref) {
55
55
  updateDataSource = props.updateDataSource,
56
56
  transformResponse = props.transformResponse,
57
57
  isViewPro = props.isView,
58
+ _props$viewportReady = props.viewportReady,
59
+ viewportReady = _props$viewportReady === void 0 ? false : _props$viewportReady,
58
60
  selectProps = (0, _objectWithoutProperties2.default)(props, _excluded);
61
+ /** 是否在可视区域出现过 */
62
+ var _useState = (0, _react.useState)(false),
63
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
64
+ viewFlag = _useState2[0],
65
+ setViewFlag = _useState2[1];
66
+ var refSelect = (0, _react.useRef)();
67
+ var _useInViewport = (0, _ahooks.useInViewport)(refSelect),
68
+ _useInViewport2 = (0, _slicedToArray2.default)(_useInViewport, 1),
69
+ inViewport = _useInViewport2[0];
59
70
  selectProps.showCodeName = (_selectProps$showCode = selectProps.showCodeName) !== null && _selectProps$showCode !== void 0 ? _selectProps$showCode : showCodeName;
60
71
  var value = props.value;
61
72
  var _ref2 = _.ProForm.useFieldProps() || {},
@@ -66,15 +77,15 @@ var ProSelect = exports.ProSelect = function ProSelect(props, ref) {
66
77
  code = fieldNames.value;
67
78
  label = fieldNames.label;
68
79
  }
69
- var _useState = (0, _react.useState)(dataSource || []),
70
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
71
- selectList = _useState2[0],
72
- setSelectList = _useState2[1];
73
- // 用来控制只有第一次才会设置 defaultOne 属性、🔒
74
- var _useState3 = (0, _react.useState)(false),
80
+ var _useState3 = (0, _react.useState)(dataSource || []),
75
81
  _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
76
- isDefaultOne = _useState4[0],
77
- setIsDefaultOne = _useState4[1];
82
+ selectList = _useState4[0],
83
+ setSelectList = _useState4[1];
84
+ // 用来控制只有第一次才会设置 defaultOne 属性、🔒
85
+ var _useState5 = (0, _react.useState)(false),
86
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
87
+ isDefaultOne = _useState6[0],
88
+ setIsDefaultOne = _useState6[1];
78
89
  var OptionRender = optionRender;
79
90
  var defaultOnSuccessFun = function defaultOnSuccessFun(res) {
80
91
  var _res$status = res.status,
@@ -135,8 +146,16 @@ var ProSelect = exports.ProSelect = function ProSelect(props, ref) {
135
146
  if (manual) {
136
147
  return;
137
148
  }
149
+ if (viewportReady && !viewFlag) {
150
+ return;
151
+ }
138
152
  fetchFunction.run(defaultParams);
139
- }, [useRequest === null || useRequest === void 0 ? void 0 : useRequest.options, defaultDisableValue]);
153
+ }, [useRequest === null || useRequest === void 0 ? void 0 : useRequest.options, defaultDisableValue, viewFlag]);
154
+ (0, _react.useEffect)(function () {
155
+ if (inViewport && !viewFlag && viewportReady) {
156
+ setViewFlag(true);
157
+ }
158
+ }, [inViewport]);
140
159
  // disable默认值
141
160
  if (defaultDisableValue) {
142
161
  return (0, _jsxRuntime.jsx)("span", {
@@ -10,6 +10,8 @@ export interface DataOption {
10
10
  export interface PropSelectProps extends Omit<SelectProps, 'onSearch'> {
11
11
  /** 是否查看模式 */
12
12
  isView?: boolean;
13
+ /** 是否开启组件在可视区域中才发起useRequest请求 默认 false */
14
+ viewportReady?: boolean;
13
15
  /** 默认数组第一项 */
14
16
  defaultOne?: boolean;
15
17
  /** 数据源 */
@@ -360,7 +360,7 @@ function List(props) {
360
360
  }
361
361
  return (0, _jsxRuntime.jsx)("div", {
362
362
  className: disabledMode === 'hide' ? 'hide-disable-node' : '',
363
- children: (_treeData === null || _treeData === void 0 ? void 0 : _treeData.length) ? (0, _jsxRuntime.jsx)(_antd.Tree, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, others), expandedKeys), {}, {
363
+ children: (_treeData === null || _treeData === void 0 ? void 0 : _treeData.length) ? (0, _jsxRuntime.jsx)(_antd.Tree, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, others), additionProps), {}, {
364
364
  disabled: disabled,
365
365
  style: {
366
366
  width: '100%'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zat-design/sisyphus-react",
3
- "version": "3.4.12",
3
+ "version": "3.4.13",
4
4
  "license": "Apache-2.0",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",