@hw-component/form 1.9.13 → 1.9.15

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.
@@ -3,7 +3,7 @@ import _typeof from '@babel/runtime-corejs3/helpers/typeof';
3
3
  import _objectWithoutProperties from '@babel/runtime-corejs3/helpers/objectWithoutProperties';
4
4
  import _defineProperty from '@babel/runtime-corejs3/helpers/defineProperty';
5
5
  import _slicedToArray from '@babel/runtime-corejs3/helpers/slicedToArray';
6
- import { jsxs, jsx } from 'react/jsx-runtime';
6
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
7
7
  import { Input, InputNumber } from 'antd';
8
8
  import { SwapRightOutlined } from '@ant-design/icons';
9
9
  import React, { useState, useMemo } from 'react';
@@ -22,25 +22,49 @@ var useArrayProps = function useArrayProps(props) {
22
22
  return [props, props];
23
23
  }, [props]);
24
24
  };
25
- var InputNumberGroup = function InputNumberGroup(_ref) {
26
- var _ref$value = _ref.value,
27
- value = _ref$value === void 0 ? {} : _ref$value,
28
- _ref$valueMap = _ref.valueMap,
29
- valueMap = _ref$valueMap === void 0 ? {
25
+ var Addon = function Addon(_ref) {
26
+ var children = _ref.children,
27
+ value = _ref.value,
28
+ onChange = _ref.onChange;
29
+ var addonClassname = useClassName(["hw-input-group-addon"]);
30
+ if (!children) {
31
+ return jsx(Fragment, {});
32
+ }
33
+ if (/*#__PURE__*/React.isValidElement(children)) {
34
+ return jsx("div", {
35
+ className: addonClassname,
36
+ children: /*#__PURE__*/React.cloneElement(children, {
37
+ value: value,
38
+ onChange: onChange
39
+ })
40
+ });
41
+ }
42
+ return jsx("div", {
43
+ className: addonClassname,
44
+ children: children
45
+ });
46
+ };
47
+ var InputNumberGroup = function InputNumberGroup(_ref2) {
48
+ var _ref2$value = _ref2.value,
49
+ value = _ref2$value === void 0 ? {} : _ref2$value,
50
+ _ref2$valueMap = _ref2.valueMap,
51
+ valueMap = _ref2$valueMap === void 0 ? {
30
52
  min: "min",
31
53
  max: "max"
32
- } : _ref$valueMap,
33
- onChange = _ref.onChange,
34
- _ref$placeholder = _ref.placeholder,
35
- placeholder = _ref$placeholder === void 0 ? ["请输入", "请输入"] : _ref$placeholder,
36
- _ref$inputNumberProps = _ref.inputNumberProps,
37
- inputNumberProps = _ref$inputNumberProps === void 0 ? {} : _ref$inputNumberProps,
38
- addonAfter = _ref.addonAfter,
39
- _ref$noHandlerWrap = _ref.noHandlerWrap,
40
- noHandlerWrap = _ref$noHandlerWrap === void 0 ? true : _ref$noHandlerWrap,
41
- addFormat = _ref.addFormat,
42
- disabled = _ref.disabled,
43
- addonBefore = _ref.addonBefore;
54
+ } : _ref2$valueMap,
55
+ onChange = _ref2.onChange,
56
+ _ref2$placeholder = _ref2.placeholder,
57
+ placeholder = _ref2$placeholder === void 0 ? ["请输入", "请输入"] : _ref2$placeholder,
58
+ _ref2$inputNumberProp = _ref2.inputNumberProps,
59
+ inputNumberProps = _ref2$inputNumberProp === void 0 ? {} : _ref2$inputNumberProp,
60
+ addonAfter = _ref2.addonAfter,
61
+ _ref2$noHandlerWrap = _ref2.noHandlerWrap,
62
+ noHandlerWrap = _ref2$noHandlerWrap === void 0 ? true : _ref2$noHandlerWrap,
63
+ addFormat = _ref2.addFormat,
64
+ disabled = _ref2.disabled,
65
+ addonBefore = _ref2.addonBefore,
66
+ minValMk = _ref2.minValMk,
67
+ maxValMk = _ref2.maxValMk;
44
68
  var min = valueMap.min,
45
69
  max = valueMap.max;
46
70
  var minVal = value[min],
@@ -65,7 +89,6 @@ var InputNumberGroup = function InputNumberGroup(_ref) {
65
89
  var iconClassname = useClassName(["hw-input-group-icon"]);
66
90
  var disabledClassname = useClassName(["hw-input-group-disabled"]);
67
91
  var notDisabledClassname = useClassName(["hw-input-group-not-disabled"]);
68
- var addonClassname = useClassName(["hw-input-group-addon"]);
69
92
  var noHandlerWrapClassname = useClassName(["hw-input-group-no-handler-wrap"]);
70
93
  addFormat === null || addFormat === void 0 || addFormat({
71
94
  float: {
@@ -101,12 +124,10 @@ var InputNumberGroup = function InputNumberGroup(_ref) {
101
124
  return jsxs(Input.Group, {
102
125
  compact: true,
103
126
  className: contentClassname,
104
- children: [addonBefore && jsx("div", {
105
- className: addonClassname,
106
- children: /*#__PURE__*/React.cloneElement(addonBefore, {
107
- value: value,
108
- onChange: onChange
109
- })
127
+ children: [jsx(Addon, {
128
+ value: value,
129
+ onChange: onChange,
130
+ children: addonBefore
110
131
  }), jsxs("div", {
111
132
  className: "".concat(bodyClassname, " \n ").concat(focus ? activeClassname : "", " \n ").concat(noHandlerWrap ? noHandlerWrapClassname : "", "\n ").concat(disabled ? disabledClassname : notDisabledClassname, "\n "),
112
133
  children: [jsx("span", {
@@ -114,7 +135,7 @@ var InputNumberGroup = function InputNumberGroup(_ref) {
114
135
  }), jsx(InputNumber, _objectSpread(_objectSpread({
115
136
  bordered: false,
116
137
  value: minVal,
117
- max: maxVal,
138
+ max: maxValMk ? maxValMk(maxVal) : maxVal,
118
139
  min: 0,
119
140
  className: oneClassname,
120
141
  onFocus: function onFocus() {
@@ -137,7 +158,7 @@ var InputNumberGroup = function InputNumberGroup(_ref) {
137
158
  value: maxVal,
138
159
  className: oneClassname,
139
160
  placeholder: edPlaceholder,
140
- min: minVal,
161
+ min: minValMk ? minValMk(minVal) : minVal,
141
162
  onFocus: function onFocus() {
142
163
  setFocus(true);
143
164
  },
@@ -150,20 +171,18 @@ var InputNumberGroup = function InputNumberGroup(_ref) {
150
171
  }, edProps), {}, {
151
172
  disabled: disabled
152
173
  }))]
153
- }), addonAfter && jsx("div", {
154
- className: addonClassname,
155
- children: /*#__PURE__*/React.cloneElement(addonAfter, {
156
- value: value,
157
- onChange: onChange
158
- })
174
+ }), jsx(Addon, {
175
+ value: value,
176
+ onChange: onChange,
177
+ children: addonAfter
159
178
  })]
160
179
  });
161
180
  };
162
181
  var Index = HFormConnect(InputNumberGroup);
163
182
  var HInputNumberGroup = {
164
183
  Component: Index,
165
- placeholder: function placeholder(_ref4) {
166
- var label = _ref4.label;
184
+ placeholder: function placeholder(_ref5) {
185
+ var label = _ref5.label;
167
186
  return ["\u8BF7\u8F93\u5165".concat(label, "\u6700\u5C0F\u503C"), "\u8BF7\u8F93\u5165".concat(label, "\u6700\u5927\u503C")];
168
187
  }
169
188
  };
@@ -25,25 +25,49 @@ var useArrayProps = function useArrayProps(props) {
25
25
  return [props, props];
26
26
  }, [props]);
27
27
  };
28
- var InputNumberGroup = function InputNumberGroup(_ref) {
29
- var _ref$value = _ref.value,
30
- value = _ref$value === void 0 ? {} : _ref$value,
31
- _ref$valueMap = _ref.valueMap,
32
- valueMap = _ref$valueMap === void 0 ? {
28
+ var Addon = function Addon(_ref) {
29
+ var children = _ref.children,
30
+ value = _ref.value,
31
+ onChange = _ref.onChange;
32
+ var addonClassname = index.useClassName(["hw-input-group-addon"]);
33
+ if (!children) {
34
+ return jsxRuntime.jsx(jsxRuntime.Fragment, {});
35
+ }
36
+ if (/*#__PURE__*/React.isValidElement(children)) {
37
+ return jsxRuntime.jsx("div", {
38
+ className: addonClassname,
39
+ children: /*#__PURE__*/React.cloneElement(children, {
40
+ value: value,
41
+ onChange: onChange
42
+ })
43
+ });
44
+ }
45
+ return jsxRuntime.jsx("div", {
46
+ className: addonClassname,
47
+ children: children
48
+ });
49
+ };
50
+ var InputNumberGroup = function InputNumberGroup(_ref2) {
51
+ var _ref2$value = _ref2.value,
52
+ value = _ref2$value === void 0 ? {} : _ref2$value,
53
+ _ref2$valueMap = _ref2.valueMap,
54
+ valueMap = _ref2$valueMap === void 0 ? {
33
55
  min: "min",
34
56
  max: "max"
35
- } : _ref$valueMap,
36
- onChange = _ref.onChange,
37
- _ref$placeholder = _ref.placeholder,
38
- placeholder = _ref$placeholder === void 0 ? ["请输入", "请输入"] : _ref$placeholder,
39
- _ref$inputNumberProps = _ref.inputNumberProps,
40
- inputNumberProps = _ref$inputNumberProps === void 0 ? {} : _ref$inputNumberProps,
41
- addonAfter = _ref.addonAfter,
42
- _ref$noHandlerWrap = _ref.noHandlerWrap,
43
- noHandlerWrap = _ref$noHandlerWrap === void 0 ? true : _ref$noHandlerWrap,
44
- addFormat = _ref.addFormat,
45
- disabled = _ref.disabled,
46
- addonBefore = _ref.addonBefore;
57
+ } : _ref2$valueMap,
58
+ onChange = _ref2.onChange,
59
+ _ref2$placeholder = _ref2.placeholder,
60
+ placeholder = _ref2$placeholder === void 0 ? ["请输入", "请输入"] : _ref2$placeholder,
61
+ _ref2$inputNumberProp = _ref2.inputNumberProps,
62
+ inputNumberProps = _ref2$inputNumberProp === void 0 ? {} : _ref2$inputNumberProp,
63
+ addonAfter = _ref2.addonAfter,
64
+ _ref2$noHandlerWrap = _ref2.noHandlerWrap,
65
+ noHandlerWrap = _ref2$noHandlerWrap === void 0 ? true : _ref2$noHandlerWrap,
66
+ addFormat = _ref2.addFormat,
67
+ disabled = _ref2.disabled,
68
+ addonBefore = _ref2.addonBefore,
69
+ minValMk = _ref2.minValMk,
70
+ maxValMk = _ref2.maxValMk;
47
71
  var min = valueMap.min,
48
72
  max = valueMap.max;
49
73
  var minVal = value[min],
@@ -68,7 +92,6 @@ var InputNumberGroup = function InputNumberGroup(_ref) {
68
92
  var iconClassname = index.useClassName(["hw-input-group-icon"]);
69
93
  var disabledClassname = index.useClassName(["hw-input-group-disabled"]);
70
94
  var notDisabledClassname = index.useClassName(["hw-input-group-not-disabled"]);
71
- var addonClassname = index.useClassName(["hw-input-group-addon"]);
72
95
  var noHandlerWrapClassname = index.useClassName(["hw-input-group-no-handler-wrap"]);
73
96
  addFormat === null || addFormat === void 0 || addFormat({
74
97
  float: {
@@ -104,12 +127,10 @@ var InputNumberGroup = function InputNumberGroup(_ref) {
104
127
  return jsxRuntime.jsxs(antd.Input.Group, {
105
128
  compact: true,
106
129
  className: contentClassname,
107
- children: [addonBefore && jsxRuntime.jsx("div", {
108
- className: addonClassname,
109
- children: /*#__PURE__*/React.cloneElement(addonBefore, {
110
- value: value,
111
- onChange: onChange
112
- })
130
+ children: [jsxRuntime.jsx(Addon, {
131
+ value: value,
132
+ onChange: onChange,
133
+ children: addonBefore
113
134
  }), jsxRuntime.jsxs("div", {
114
135
  className: "".concat(bodyClassname, " \n ").concat(focus ? activeClassname : "", " \n ").concat(noHandlerWrap ? noHandlerWrapClassname : "", "\n ").concat(disabled ? disabledClassname : notDisabledClassname, "\n "),
115
136
  children: [jsxRuntime.jsx("span", {
@@ -117,7 +138,7 @@ var InputNumberGroup = function InputNumberGroup(_ref) {
117
138
  }), jsxRuntime.jsx(antd.InputNumber, _objectSpread(_objectSpread({
118
139
  bordered: false,
119
140
  value: minVal,
120
- max: maxVal,
141
+ max: maxValMk ? maxValMk(maxVal) : maxVal,
121
142
  min: 0,
122
143
  className: oneClassname,
123
144
  onFocus: function onFocus() {
@@ -140,7 +161,7 @@ var InputNumberGroup = function InputNumberGroup(_ref) {
140
161
  value: maxVal,
141
162
  className: oneClassname,
142
163
  placeholder: edPlaceholder,
143
- min: minVal,
164
+ min: minValMk ? minValMk(minVal) : minVal,
144
165
  onFocus: function onFocus() {
145
166
  setFocus(true);
146
167
  },
@@ -153,20 +174,18 @@ var InputNumberGroup = function InputNumberGroup(_ref) {
153
174
  }, edProps), {}, {
154
175
  disabled: disabled
155
176
  }))]
156
- }), addonAfter && jsxRuntime.jsx("div", {
157
- className: addonClassname,
158
- children: /*#__PURE__*/React.cloneElement(addonAfter, {
159
- value: value,
160
- onChange: onChange
161
- })
177
+ }), jsxRuntime.jsx(Addon, {
178
+ value: value,
179
+ onChange: onChange,
180
+ children: addonAfter
162
181
  })]
163
182
  });
164
183
  };
165
184
  var Index = HFormConnect.default(InputNumberGroup);
166
185
  var HInputNumberGroup = {
167
186
  Component: Index,
168
- placeholder: function placeholder(_ref4) {
169
- var label = _ref4.label;
187
+ placeholder: function placeholder(_ref5) {
188
+ var label = _ref5.label;
170
189
  return ["\u8BF7\u8F93\u5165".concat(label, "\u6700\u5C0F\u503C"), "\u8BF7\u8F93\u5165".concat(label, "\u6700\u5927\u503C")];
171
190
  }
172
191
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hw-component/form",
3
- "version": "1.9.13",
3
+ "version": "1.9.15",
4
4
  "description": "基于antd二次开发",
5
5
  "repository": {
6
6
  "type": "git",
@@ -19,7 +19,9 @@ interface IProps<T = any> {
19
19
  addFormat?: (config: Record<string, addFormatItemModal>) => void;
20
20
  noHandlerWrap?: boolean;
21
21
  disabled?: boolean;
22
- addonBefore?:React.ReactNode
22
+ addonBefore?:React.ReactNode;
23
+ minValMk?:(val:number)=>number;
24
+ maxValMk?:(val:number)=>number;
23
25
  }
24
26
  const useArrayProps = (props: any) => {
25
27
  return useMemo(() => {
@@ -29,6 +31,20 @@ const useArrayProps = (props: any) => {
29
31
  return [props, props];
30
32
  }, [props]);
31
33
  };
34
+ const Addon:React.FC<IProps>=({children,value,onChange})=>{
35
+ const addonClassname=useClassName(["hw-input-group-addon"])
36
+ if (!children){
37
+ return <></>
38
+ }
39
+ if (React.isValidElement(children)){
40
+ return <div className={addonClassname}>
41
+ { React.cloneElement(children as any, { value, onChange })}
42
+ </div>
43
+ }
44
+ return <div className={addonClassname}>
45
+ {children}
46
+ </div>
47
+ }
32
48
  const InputNumberGroup = ({
33
49
  value = {},
34
50
  valueMap = { min: "min", max: "max" },
@@ -40,6 +56,8 @@ const InputNumberGroup = ({
40
56
  addFormat,
41
57
  disabled,
42
58
  addonBefore,
59
+ minValMk,
60
+ maxValMk
43
61
  }: IProps) => {
44
62
  const { min, max } = valueMap;
45
63
  const { [min]: minVal, [max]: maxVal } = value;
@@ -54,7 +72,6 @@ const InputNumberGroup = ({
54
72
  const iconClassname = useClassName(["hw-input-group-icon"]);
55
73
  const disabledClassname = useClassName(["hw-input-group-disabled"]);
56
74
  const notDisabledClassname = useClassName(["hw-input-group-not-disabled"]);
57
- const addonClassname=useClassName(["hw-input-group-addon"])
58
75
  const noHandlerWrapClassname = useClassName([
59
76
  "hw-input-group-no-handler-wrap",
60
77
  ]);
@@ -98,9 +115,7 @@ const InputNumberGroup = ({
98
115
  };
99
116
  return (
100
117
  <Input.Group compact className={contentClassname}>
101
- {addonBefore&&<div className={addonClassname}>
102
- { React.cloneElement(addonBefore as any, { value, onChange })}
103
- </div>}
118
+ <Addon value={value} onChange={onChange}>{addonBefore}</Addon>
104
119
  <div
105
120
  className={`${bodyClassname}
106
121
  ${focus ? activeClassname : ""}
@@ -112,7 +127,7 @@ const InputNumberGroup = ({
112
127
  <InputNumber<number>
113
128
  bordered={false}
114
129
  value={minVal}
115
- max={maxVal}
130
+ max={maxValMk?maxValMk(maxVal):maxVal}
116
131
  min={0}
117
132
  className={oneClassname}
118
133
  onFocus={() => {
@@ -136,7 +151,7 @@ const InputNumberGroup = ({
136
151
  value={maxVal}
137
152
  className={oneClassname}
138
153
  placeholder={edPlaceholder}
139
- min={minVal}
154
+ min={minValMk?minValMk(minVal):minVal}
140
155
  onFocus={() => {
141
156
  setFocus(true);
142
157
  }}
@@ -150,9 +165,7 @@ const InputNumberGroup = ({
150
165
  disabled={disabled}
151
166
  />
152
167
  </div>
153
- {addonAfter&&<div className={addonClassname}>
154
- { React.cloneElement(addonAfter as any, { value, onChange })}
155
- </div>}
168
+ <Addon value={value} onChange={onChange}>{addonAfter}</Addon>
156
169
  </Input.Group>
157
170
  );
158
171
  };
@@ -1,9 +1,15 @@
1
1
  import {HInputNumberGroup} from '@/components';
2
2
  import {Col, Row} from 'antd';
3
+ const Test=({value,onChange})=>{
4
+ console.log(value)
5
+ return <div onClick={()=>{
6
+ onChange(1);
7
+ }}>1231</div>
8
+ }
3
9
  export default ()=>{
4
10
  return <Row style={{marginTop:20,marginLeft:20}}>
5
11
  <Col span={10}>
6
- <HInputNumberGroup />
12
+ <HInputNumberGroup addonBefore={<Test/>} />
7
13
  </Col>
8
14
  </Row>
9
15
  }