assui 2.0.37 → 2.0.38

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.
@@ -0,0 +1,5 @@
1
+ declare enum dataType {
2
+ number = "number",
3
+ string = "string"
4
+ }
5
+ export default dataType;
@@ -0,0 +1,8 @@
1
+ var dataType;
2
+
3
+ (function (dataType) {
4
+ dataType["number"] = "number";
5
+ dataType["string"] = "string";
6
+ })(dataType || (dataType = {}));
7
+
8
+ export default dataType;
@@ -1,11 +1,14 @@
1
1
  import * as React from 'react';
2
2
  import type { InputProps } from 'antd/es/input';
3
+ import dataTypeEnum from './const/dataTypeEnum';
3
4
  import * as numberTypeEnum from './const/numberType';
4
5
  export interface NumberInputProps extends Omit<InputProps, 'onChange' | 'onBlur'> {
5
6
  /** 输入框的内容 */
6
7
  value?: string | number;
7
8
  /** 输入数据的类型 */
8
9
  numberType?: 'int' | 'float';
10
+ /** value的数据类型 */
11
+ dataType?: dataTypeEnum.number | dataTypeEnum.string;
9
12
  /** 精度,只对float有效 */
10
13
  precision?: number;
11
14
  /** 同html input属性功能 */
@@ -17,7 +20,7 @@ export interface NumberInputProps extends Omit<InputProps, 'onChange' | 'onBlur'
17
20
  /** 是否允许输入负数 */
18
21
  enableMinus?: boolean;
19
22
  /** 变化回调 */
20
- onChange?: (value: string) => void;
23
+ onChange?: (value: string | number) => void;
21
24
  /** 失去焦点回调 */
22
25
  onBlur?: (value: string) => void;
23
26
  /** 按下回车的回调 */
@@ -34,5 +37,5 @@ export interface NumberInputProps extends Omit<InputProps, 'onChange' | 'onBlur'
34
37
  allowClear?: boolean;
35
38
  }
36
39
  declare const NumberInput: React.ForwardRefExoticComponent<NumberInputProps & React.RefAttributes<unknown>>;
37
- export { numberTypeEnum };
40
+ export { numberTypeEnum, dataTypeEnum };
38
41
  export default NumberInput;
@@ -57,6 +57,8 @@ var __read = this && this.__read || function (o, n) {
57
57
  import * as React from 'react';
58
58
  import Input from 'antd/es/input';
59
59
  import isUndefined from 'lodash/isUndefined';
60
+ import endsWith from 'lodash/endsWith';
61
+ import dataTypeEnum from './const/dataTypeEnum';
60
62
  import * as numberTypeEnum from './const/numberType';
61
63
  import { filterInt, filterFloat } from './utils';
62
64
  var NumberInput = /*#__PURE__*/React.forwardRef(function (props, ref) {
@@ -64,17 +66,19 @@ var NumberInput = /*#__PURE__*/React.forwardRef(function (props, ref) {
64
66
  onChange = props.onChange,
65
67
  _a = props.numberType,
66
68
  numberType = _a === void 0 ? numberTypeEnum.INT : _a,
69
+ _b = props.dataType,
70
+ dataType = _b === void 0 ? dataTypeEnum.number : _b,
67
71
  precision = props.precision,
68
72
  formatter = props.formatter,
69
73
  parser = props.parser,
70
74
  enableMinus = props.enableMinus,
71
75
  onBlur = props.onBlur,
72
76
  maxLength = props.maxLength,
73
- restProps = __rest(props, ["value", "onChange", "numberType", "precision", "formatter", "parser", "enableMinus", "onBlur", "maxLength"]);
77
+ restProps = __rest(props, ["value", "onChange", "numberType", "dataType", "precision", "formatter", "parser", "enableMinus", "onBlur", "maxLength"]);
74
78
 
75
- var _b = __read(React.useState(''), 2),
76
- inputValue = _b[0],
77
- setInputValue = _b[1];
79
+ var _c = __read(React.useState(''), 2),
80
+ inputValue = _c[0],
81
+ setInputValue = _c[1];
78
82
 
79
83
  var resultValue = isUndefined(value) ? inputValue : value;
80
84
 
@@ -107,7 +111,20 @@ var NumberInput = /*#__PURE__*/React.forwardRef(function (props, ref) {
107
111
  }
108
112
 
109
113
  if (onChange) {
110
- onChange(newNumber);
114
+ if (dataType === dataTypeEnum.number) {
115
+ if (newNumber === '') {
116
+ onChange(newNumber);
117
+ return;
118
+ }
119
+
120
+ if (numberType === numberTypeEnum.INT) {
121
+ onChange(+newNumber);
122
+ } else {
123
+ endsWith(newNumber, '.') ? onChange(newNumber) : onChange(+newNumber);
124
+ }
125
+ } else {
126
+ onChange(newNumber);
127
+ }
111
128
  }
112
129
  }
113
130
  };
@@ -123,8 +140,14 @@ var NumberInput = /*#__PURE__*/React.forwardRef(function (props, ref) {
123
140
  }
124
141
  }
125
142
 
143
+ if (dataType === dataTypeEnum.number) {
144
+ if (numberType === numberTypeEnum.FLOAT && onChange && endsWith("" + resultValue, '.')) {
145
+ onChange(+resultValue);
146
+ }
147
+ }
148
+
126
149
  if (onBlur) {
127
- onBlur("" + resultValue || '');
150
+ onBlur("" + resultValue);
128
151
  }
129
152
  };
130
153
 
@@ -141,5 +164,5 @@ var NumberInput = /*#__PURE__*/React.forwardRef(function (props, ref) {
141
164
  NumberInput.defaultProps = {
142
165
  enableMinus: false
143
166
  };
144
- export { numberTypeEnum };
167
+ export { numberTypeEnum, dataTypeEnum };
145
168
  export default NumberInput;
@@ -0,0 +1,5 @@
1
+ declare enum dataType {
2
+ number = "number",
3
+ string = "string"
4
+ }
5
+ export default dataType;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var dataType;
7
+
8
+ (function (dataType) {
9
+ dataType["number"] = "number";
10
+ dataType["string"] = "string";
11
+ })(dataType || (dataType = {}));
12
+
13
+ exports["default"] = dataType;
@@ -1,11 +1,14 @@
1
1
  import * as React from 'react';
2
2
  import type { InputProps } from 'antd/es/input';
3
+ import dataTypeEnum from './const/dataTypeEnum';
3
4
  import * as numberTypeEnum from './const/numberType';
4
5
  export interface NumberInputProps extends Omit<InputProps, 'onChange' | 'onBlur'> {
5
6
  /** 输入框的内容 */
6
7
  value?: string | number;
7
8
  /** 输入数据的类型 */
8
9
  numberType?: 'int' | 'float';
10
+ /** value的数据类型 */
11
+ dataType?: dataTypeEnum.number | dataTypeEnum.string;
9
12
  /** 精度,只对float有效 */
10
13
  precision?: number;
11
14
  /** 同html input属性功能 */
@@ -17,7 +20,7 @@ export interface NumberInputProps extends Omit<InputProps, 'onChange' | 'onBlur'
17
20
  /** 是否允许输入负数 */
18
21
  enableMinus?: boolean;
19
22
  /** 变化回调 */
20
- onChange?: (value: string) => void;
23
+ onChange?: (value: string | number) => void;
21
24
  /** 失去焦点回调 */
22
25
  onBlur?: (value: string) => void;
23
26
  /** 按下回车的回调 */
@@ -34,5 +37,5 @@ export interface NumberInputProps extends Omit<InputProps, 'onChange' | 'onBlur'
34
37
  allowClear?: boolean;
35
38
  }
36
39
  declare const NumberInput: React.ForwardRefExoticComponent<NumberInputProps & React.RefAttributes<unknown>>;
37
- export { numberTypeEnum };
40
+ export { numberTypeEnum, dataTypeEnum };
38
41
  export default NumberInput;
@@ -99,7 +99,7 @@ var __importDefault = this && this.__importDefault || function (mod) {
99
99
  Object.defineProperty(exports, "__esModule", {
100
100
  value: true
101
101
  });
102
- exports.numberTypeEnum = void 0;
102
+ exports.dataTypeEnum = exports.numberTypeEnum = void 0;
103
103
 
104
104
  var React = __importStar(require("react"));
105
105
 
@@ -107,6 +107,12 @@ var input_1 = __importDefault(require("antd/es/input"));
107
107
 
108
108
  var isUndefined_1 = __importDefault(require("lodash/isUndefined"));
109
109
 
110
+ var endsWith_1 = __importDefault(require("lodash/endsWith"));
111
+
112
+ var dataTypeEnum_1 = __importDefault(require("./const/dataTypeEnum"));
113
+
114
+ exports.dataTypeEnum = dataTypeEnum_1["default"];
115
+
110
116
  var numberTypeEnum = __importStar(require("./const/numberType"));
111
117
 
112
118
  exports.numberTypeEnum = numberTypeEnum;
@@ -118,17 +124,19 @@ var NumberInput = React.forwardRef(function (props, ref) {
118
124
  onChange = props.onChange,
119
125
  _a = props.numberType,
120
126
  numberType = _a === void 0 ? numberTypeEnum.INT : _a,
127
+ _b = props.dataType,
128
+ dataType = _b === void 0 ? dataTypeEnum_1["default"].number : _b,
121
129
  precision = props.precision,
122
130
  formatter = props.formatter,
123
131
  parser = props.parser,
124
132
  enableMinus = props.enableMinus,
125
133
  onBlur = props.onBlur,
126
134
  maxLength = props.maxLength,
127
- restProps = __rest(props, ["value", "onChange", "numberType", "precision", "formatter", "parser", "enableMinus", "onBlur", "maxLength"]);
135
+ restProps = __rest(props, ["value", "onChange", "numberType", "dataType", "precision", "formatter", "parser", "enableMinus", "onBlur", "maxLength"]);
128
136
 
129
- var _b = __read(React.useState(''), 2),
130
- inputValue = _b[0],
131
- setInputValue = _b[1];
137
+ var _c = __read(React.useState(''), 2),
138
+ inputValue = _c[0],
139
+ setInputValue = _c[1];
132
140
 
133
141
  var resultValue = isUndefined_1["default"](value) ? inputValue : value;
134
142
 
@@ -161,7 +169,20 @@ var NumberInput = React.forwardRef(function (props, ref) {
161
169
  }
162
170
 
163
171
  if (onChange) {
164
- onChange(newNumber);
172
+ if (dataType === dataTypeEnum_1["default"].number) {
173
+ if (newNumber === '') {
174
+ onChange(newNumber);
175
+ return;
176
+ }
177
+
178
+ if (numberType === numberTypeEnum.INT) {
179
+ onChange(+newNumber);
180
+ } else {
181
+ endsWith_1["default"](newNumber, '.') ? onChange(newNumber) : onChange(+newNumber);
182
+ }
183
+ } else {
184
+ onChange(newNumber);
185
+ }
165
186
  }
166
187
  }
167
188
  };
@@ -177,8 +198,14 @@ var NumberInput = React.forwardRef(function (props, ref) {
177
198
  }
178
199
  }
179
200
 
201
+ if (dataType === dataTypeEnum_1["default"].number) {
202
+ if (numberType === numberTypeEnum.FLOAT && onChange && endsWith_1["default"]("" + resultValue, '.')) {
203
+ onChange(+resultValue);
204
+ }
205
+ }
206
+
180
207
  if (onBlur) {
181
- onBlur("" + resultValue || '');
208
+ onBlur("" + resultValue);
182
209
  }
183
210
  };
184
211
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "assui",
3
- "version": "2.0.37",
3
+ "version": "2.0.38",
4
4
  "description": "react ui library",
5
5
  "author": "jason <usochen@gmail.com>",
6
6
  "main": "./lib/index.js",
@@ -33,7 +33,7 @@
33
33
  "@ahooksjs/use-url-state": "^2.5.8",
34
34
  "@tinymce/tinymce-react": "^3.13.0",
35
35
  "@types/react-beautiful-dnd": "^13.1.2",
36
- "a-icons": "^1.0.22",
36
+ "a-icons": "^1.0.23",
37
37
  "ahooks": "^2.10.9",
38
38
  "bignumber.js": "^9.0.1",
39
39
  "copy-to-clipboard": "^3.3.1",
@@ -69,5 +69,5 @@
69
69
  "node": ">=10.0.0"
70
70
  },
71
71
  "license": "MIT",
72
- "gitHead": "c8560d2661d2987b9ccfef8f788d66935044c626"
72
+ "gitHead": "395622ee048bfbfdc123e6524a578e050e7f5d9d"
73
73
  }