@nutui/nutui-react 1.3.5-beta.1 → 1.3.6

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 (108) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/esm/ActionSheet.js +15 -25
  3. package/dist/esm/Address.js +151 -221
  4. package/dist/esm/AnimatingNumbers.js +7 -31
  5. package/dist/esm/Audio.js +31 -66
  6. package/dist/esm/Avatar.js +25 -51
  7. package/dist/esm/AvatarGroup.js +2 -9
  8. package/dist/esm/BackTop.js +29 -55
  9. package/dist/esm/Badge.js +9 -20
  10. package/dist/esm/Barrage.js +8 -20
  11. package/dist/esm/Button.js +22 -37
  12. package/dist/esm/Calendar.js +23 -37
  13. package/dist/esm/CalendarItem.js +86 -186
  14. package/dist/esm/Card.js +14 -20
  15. package/dist/esm/Cascader.js +77 -197
  16. package/dist/esm/Cell.js +20 -30
  17. package/dist/esm/CellGroup.js +6 -12
  18. package/dist/esm/Checkbox.js +27 -48
  19. package/dist/esm/CheckboxGroup.js +12 -30
  20. package/dist/esm/CircleProgress.js +11 -28
  21. package/dist/esm/Col.js +11 -22
  22. package/dist/esm/Collapse.js +11 -27
  23. package/dist/esm/CollapseItem.js +33 -47
  24. package/dist/esm/ConfigProvider.js +4 -15
  25. package/dist/esm/CountDown.js +37 -74
  26. package/dist/esm/DatePicker.js +44 -106
  27. package/dist/esm/Dialog.js +31 -89
  28. package/dist/esm/Divider.js +8 -15
  29. package/dist/esm/Drag.js +30 -45
  30. package/dist/esm/Elevator.js +37 -74
  31. package/dist/esm/Empty.js +11 -24
  32. package/dist/esm/FixedNav.js +18 -29
  33. package/dist/esm/Grid.js +13 -28
  34. package/dist/esm/GridItem.js +18 -34
  35. package/dist/esm/ImagePreview.js +36 -71
  36. package/dist/esm/Indicator.js +9 -20
  37. package/dist/esm/Infiniteloading.js +26 -55
  38. package/dist/esm/Input.js +62 -106
  39. package/dist/esm/InputNumber.js +25 -52
  40. package/dist/esm/Layout.js +0 -6
  41. package/dist/esm/Menu.js +24 -46
  42. package/dist/esm/MenuItem.js +29 -52
  43. package/dist/esm/NavBar.js +18 -34
  44. package/dist/esm/NoticeBar.js +54 -102
  45. package/dist/esm/Notify.js +9 -38
  46. package/dist/esm/NumberKeyboard.js +21 -52
  47. package/dist/esm/Pagination.js +38 -71
  48. package/dist/esm/Picker.js +91 -178
  49. package/dist/esm/Popover.js +32 -72
  50. package/dist/esm/Popup.js +40 -72
  51. package/dist/esm/Price.js +7 -24
  52. package/dist/esm/Progress.js +35 -50
  53. package/dist/esm/PullToRefresh.js +28 -83
  54. package/dist/esm/Radio.js +24 -47
  55. package/dist/esm/RadioGroup.js +14 -24
  56. package/dist/esm/Range.js +44 -116
  57. package/dist/esm/Rate.js +21 -39
  58. package/dist/esm/Row.js +7 -16
  59. package/dist/esm/SearchBar.js +47 -68
  60. package/dist/esm/ShortPassword.js +29 -56
  61. package/dist/esm/SideNavBar.js +9 -16
  62. package/dist/esm/SideNavBarItem.js +4 -11
  63. package/dist/esm/Signature.js +13 -43
  64. package/dist/esm/Skeleton.js +13 -23
  65. package/dist/esm/Step.js +12 -28
  66. package/dist/esm/Steps.js +6 -14
  67. package/dist/esm/Sticky.js +24 -52
  68. package/dist/esm/SubSideNavBar.js +7 -22
  69. package/dist/esm/Swipe.js +15 -54
  70. package/dist/esm/Swiper.js +102 -186
  71. package/dist/esm/SwiperItem.js +2 -12
  72. package/dist/esm/Switch.js +13 -27
  73. package/dist/esm/Tabbar.js +13 -25
  74. package/dist/esm/TabbarItem.js +15 -23
  75. package/dist/esm/Table.js +19 -39
  76. package/dist/esm/Tag.js +19 -36
  77. package/dist/esm/TextArea.js +19 -43
  78. package/dist/esm/TimeDetail.js +15 -28
  79. package/dist/esm/TimePannel.js +5 -12
  80. package/dist/esm/TimeSelect.js +35 -59
  81. package/dist/esm/Toast.js +16 -49
  82. package/dist/esm/Uploader.js +57 -152
  83. package/dist/esm/Video.js +8 -19
  84. package/dist/esm/VirtualList.js +84 -118
  85. package/dist/esm/date-710f8c7c.js +9 -33
  86. package/dist/esm/get-scroll-parent-3dcd3f53.js +1 -9
  87. package/dist/esm/icon-8dc4de10.js +11 -21
  88. package/dist/esm/offsetContext-0e3d04b3.js +0 -3
  89. package/dist/esm/overlay-ed3eb37d.js +12 -23
  90. package/dist/esm/render-18227751.js +0 -11
  91. package/dist/esm/tabpane-c957ab14.js +4 -10
  92. package/dist/esm/tabs-0896a61b.js +28 -56
  93. package/dist/esm/types/src/packages/elevator/demo.d.ts +1 -0
  94. package/dist/esm/types/src/packages/searchbar/searchbar.d.ts +2 -0
  95. package/dist/esm/useClientRect-839d18c5.js +0 -5
  96. package/dist/esm/useTouch-a2ea68c6.js +27 -47
  97. package/dist/locales/base.js +1 -1
  98. package/dist/locales/en-US.js +1 -1
  99. package/dist/locales/id-ID.js +1 -1
  100. package/dist/locales/zh-CN.js +1 -1
  101. package/dist/locales/zh-TW.js +1 -1
  102. package/dist/nutui.react.es.js +424 -406
  103. package/dist/nutui.react.umd.js +416 -398
  104. package/dist/packages/searchbar/searchbar.scss +20 -3
  105. package/dist/style.css +1 -1
  106. package/dist/style.es.js +1 -1
  107. package/dist/types/index.d.ts +2 -0
  108. package/package.json +1 -1
@@ -2,11 +2,8 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
3
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
4
  var _excluded = ["children", "hasMore", "threshold", "containerId", "useWindow", "useCapture", "isOpenRefresh", "pullIcon", "pullTxt", "loadIcon", "loadTxt", "loadMoreTxt", "className", "onRefresh", "onLoadMore", "onScrollChange", "iconClassPrefix", "iconFontClassName"];
5
-
6
5
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7
-
8
6
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
9
-
10
7
  import React__default, { useState, useRef, useEffect } from 'react';
11
8
  import classNames from 'classnames';
12
9
  import { c as cn } from './bem-893ad28d.js';
@@ -14,7 +11,6 @@ import Icon from './Icon.js';
14
11
  import { useConfig } from './ConfigProvider.js';
15
12
  import { C as ComponentDefaults } from './typings-1c5f2628.js';
16
13
  import '@bem-react/classname';
17
-
18
14
  var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
19
15
  hasMore: true,
20
16
  threshold: 200,
@@ -28,37 +24,33 @@ var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
28
24
  loadTxt: '加载中···',
29
25
  loadMoreTxt: '哎呀,这里是底部了啦'
30
26
  });
31
-
32
27
  var Infiniteloading = function Infiniteloading(props) {
33
28
  var _useConfig = useConfig(),
34
- locale = _useConfig.locale;
35
-
29
+ locale = _useConfig.locale;
36
30
  var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
37
- children = _defaultProps$props.children,
38
- hasMore = _defaultProps$props.hasMore,
39
- threshold = _defaultProps$props.threshold,
40
- containerId = _defaultProps$props.containerId,
41
- useWindow = _defaultProps$props.useWindow,
42
- useCapture = _defaultProps$props.useCapture,
43
- isOpenRefresh = _defaultProps$props.isOpenRefresh,
44
- pullIcon = _defaultProps$props.pullIcon,
45
- pullTxt = _defaultProps$props.pullTxt,
46
- loadIcon = _defaultProps$props.loadIcon,
47
- loadTxt = _defaultProps$props.loadTxt,
48
- loadMoreTxt = _defaultProps$props.loadMoreTxt,
49
- className = _defaultProps$props.className,
50
- onRefresh = _defaultProps$props.onRefresh,
51
- onLoadMore = _defaultProps$props.onLoadMore,
52
- onScrollChange = _defaultProps$props.onScrollChange,
53
- iconClassPrefix = _defaultProps$props.iconClassPrefix,
54
- iconFontClassName = _defaultProps$props.iconFontClassName,
55
- restProps = _objectWithoutProperties(_defaultProps$props, _excluded);
56
-
31
+ children = _defaultProps$props.children,
32
+ hasMore = _defaultProps$props.hasMore,
33
+ threshold = _defaultProps$props.threshold,
34
+ containerId = _defaultProps$props.containerId,
35
+ useWindow = _defaultProps$props.useWindow,
36
+ useCapture = _defaultProps$props.useCapture,
37
+ isOpenRefresh = _defaultProps$props.isOpenRefresh,
38
+ pullIcon = _defaultProps$props.pullIcon,
39
+ pullTxt = _defaultProps$props.pullTxt,
40
+ loadIcon = _defaultProps$props.loadIcon,
41
+ loadTxt = _defaultProps$props.loadTxt,
42
+ loadMoreTxt = _defaultProps$props.loadMoreTxt,
43
+ className = _defaultProps$props.className,
44
+ onRefresh = _defaultProps$props.onRefresh,
45
+ onLoadMore = _defaultProps$props.onLoadMore,
46
+ onScrollChange = _defaultProps$props.onScrollChange,
47
+ iconClassPrefix = _defaultProps$props.iconClassPrefix,
48
+ iconFontClassName = _defaultProps$props.iconFontClassName,
49
+ restProps = _objectWithoutProperties(_defaultProps$props, _excluded);
57
50
  var _useState = useState(false),
58
- _useState2 = _slicedToArray(_useState, 2),
59
- isInfiniting = _useState2[0],
60
- setIsInfiniting = _useState2[1];
61
-
51
+ _useState2 = _slicedToArray(_useState, 2),
52
+ isInfiniting = _useState2[0],
53
+ setIsInfiniting = _useState2[1];
62
54
  var scroller = useRef(null);
63
55
  var refreshTop = useRef(null);
64
56
  var scrollEl = useRef(window);
@@ -88,40 +80,33 @@ var Infiniteloading = function Infiniteloading(props) {
88
80
  });
89
81
  };
90
82
  }, []);
91
-
92
83
  var getStyle = function getStyle() {
93
84
  return {
94
85
  height: distance.current < 0 ? "0px" : "".concat(distance.current, "px"),
95
86
  transition: isTouching.current ? "height 0s cubic-bezier(0.25,0.1,0.25,1)" : "height 0.2s cubic-bezier(0.25,0.1,0.25,1)"
96
87
  };
97
88
  };
98
-
99
89
  var getParentElement = function getParentElement(el) {
100
90
  return containerId ? document.querySelector("#".concat(containerId)) : el && el.parentNode;
101
91
  };
102
-
103
92
  var handleScroll = function handleScroll() {
104
93
  requestAniFrame()(function () {
105
94
  if (!isScrollAtBottom() || !hasMore || isInfiniting) {
106
95
  return false;
107
96
  }
108
-
109
97
  setIsInfiniting(true);
110
98
  onLoadMore && onLoadMore(infiniteDone);
111
99
  return true;
112
100
  });
113
101
  };
114
-
115
102
  var infiniteDone = function infiniteDone() {
116
103
  setIsInfiniting(false);
117
104
  };
118
-
119
105
  var refreshDone = function refreshDone() {
120
106
  distance.current = 0;
121
107
  refreshTop.current.style.height = "".concat(distance.current, "px");
122
108
  isTouching.current = false;
123
109
  };
124
-
125
110
  var touchStart = function touchStart(event) {
126
111
  if (beforeScrollTop.current === 0 && !isTouching.current && isOpenRefresh) {
127
112
  y.current = event.touches[0].pageY;
@@ -130,13 +115,10 @@ var Infiniteloading = function Infiniteloading(props) {
130
115
  refreshMaxH.current = Math.floor(childHeight * 1 + 10);
131
116
  }
132
117
  };
133
-
134
118
  var touchMove = function touchMove(event) {
135
119
  distance.current = event.touches[0].pageY - y.current;
136
-
137
120
  if (distance.current > 0 && isTouching.current) {
138
121
  event.preventDefault();
139
-
140
122
  if (distance.current >= refreshMaxH.current) {
141
123
  distance.current = refreshMaxH.current;
142
124
  refreshTop.current.style.height = "".concat(distance.current, "px");
@@ -149,7 +131,6 @@ var Infiniteloading = function Infiniteloading(props) {
149
131
  isTouching.current = false;
150
132
  }
151
133
  };
152
-
153
134
  var touchEnd = function touchEnd() {
154
135
  if (distance.current < refreshMaxH.current) {
155
136
  distance.current = 0;
@@ -158,53 +139,44 @@ var Infiniteloading = function Infiniteloading(props) {
158
139
  onRefresh && onRefresh(refreshDone);
159
140
  }
160
141
  };
161
-
162
142
  var requestAniFrame = function requestAniFrame() {
163
143
  return window.requestAnimationFrame || window.webkitRequestAnimationFrame || function fn(callback) {
164
144
  window.setTimeout(callback, 1000 / 60);
165
145
  };
166
146
  };
167
-
168
147
  var getWindowScrollTop = function getWindowScrollTop() {
169
148
  return window.pageYOffset !== undefined ? window.pageYOffset : (document.documentElement || document.body.parentNode || document.body).scrollTop;
170
149
  };
171
-
172
150
  var calculateTopPosition = function calculateTopPosition(el) {
173
151
  return !el ? 0 : el.offsetTop + calculateTopPosition(el.offsetParent);
174
152
  };
175
-
176
153
  var isScrollAtBottom = function isScrollAtBottom() {
177
154
  var offsetDistance = 0;
178
155
  var resScrollTop = 0;
179
156
  var direction = 'down';
180
157
  var windowScrollTop = getWindowScrollTop();
181
-
182
158
  if (useWindow) {
183
159
  if (scroller.current) {
184
160
  offsetDistance = calculateTopPosition(scroller.current) + scroller.current.offsetHeight - windowScrollTop - window.innerHeight;
185
161
  }
186
-
187
162
  resScrollTop = windowScrollTop;
188
163
  } else {
189
164
  var _scrollEl$current = scrollEl.current,
190
- scrollHeight = _scrollEl$current.scrollHeight,
191
- clientHeight = _scrollEl$current.clientHeight,
192
- scrollTop = _scrollEl$current.scrollTop;
165
+ scrollHeight = _scrollEl$current.scrollHeight,
166
+ clientHeight = _scrollEl$current.clientHeight,
167
+ scrollTop = _scrollEl$current.scrollTop;
193
168
  offsetDistance = scrollHeight - clientHeight - scrollTop;
194
169
  resScrollTop = scrollTop;
195
170
  }
196
-
197
171
  if (beforeScrollTop.current > resScrollTop) {
198
172
  direction = 'up';
199
173
  } else {
200
174
  direction = 'down';
201
175
  }
202
-
203
176
  beforeScrollTop.current = resScrollTop;
204
177
  onScrollChange && onScrollChange(resScrollTop);
205
178
  return offsetDistance <= threshold && direction === 'down';
206
179
  };
207
-
208
180
  return React__default.createElement("div", _objectSpread({
209
181
  className: classes,
210
182
  ref: scroller,
@@ -241,7 +213,6 @@ var Infiniteloading = function Infiniteloading(props) {
241
213
  className: "tips"
242
214
  }, loadMoreTxt || locale.infiniteloading.loadMoreText)));
243
215
  };
244
-
245
216
  Infiniteloading.defaultProps = defaultProps;
246
217
  Infiniteloading.displayName = 'NutInfiniteloading';
247
218
  export { Infiniteloading as default };
package/dist/esm/Input.js CHANGED
@@ -2,50 +2,38 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
3
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
4
  var _excluded = ["children", "type", "defaultValue", "placeholder", "label", "labelClass", "labelWidth", "labelAlign", "colon", "inputAlign", "center", "required", "disabled", "readonly", "error", "maxlength", "leftIcon", "leftIconSize", "rightIcon", "rightIconSize", "clearable", "clearIcon", "clearSize", "border", "formatTrigger", "rules", "errorMessage", "errorMessageAlign", "showWordLimit", "autofocus", "style", "className", "rows", "slotButton", "slotInput", "change", "blur", "focus", "clear", "formatter", "keypress", "clickInput", "clickLeftIcon", "clickRightIcon", "click", "iconClassPrefix", "iconFontClassName"];
5
-
6
5
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7
-
8
6
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
9
-
10
7
  import React__default, { useState, useRef, useLayoutEffect, useEffect, useCallback } from 'react';
11
8
  import Icon from './Icon.js';
12
9
  import { useConfig } from './ConfigProvider.js';
13
10
  import { C as ComponentDefaults } from './typings-1c5f2628.js';
14
-
15
11
  function trimExtraChar(value, _char, regExp) {
16
12
  var index = value.indexOf(_char);
17
-
18
13
  if (index === -1) {
19
14
  return value;
20
15
  }
21
-
22
16
  if (_char === '-' && index !== 0) {
23
17
  return value.slice(0, index);
24
18
  }
25
-
26
19
  return value.slice(0, index + 1) + value.slice(index).replace(regExp, '');
27
20
  }
28
-
29
21
  function formatNumber(value) {
30
22
  var allowDot = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
31
23
  var allowMinus = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
32
-
33
24
  if (allowDot) {
34
25
  value = trimExtraChar(value, '.', /\./g);
35
26
  } else {
36
27
  value = value.split('.')[0];
37
28
  }
38
-
39
29
  if (allowMinus) {
40
30
  value = trimExtraChar(value, '-', /-/g);
41
31
  } else {
42
32
  value = value.replace(/-/, '');
43
33
  }
44
-
45
34
  var regExp = allowDot ? /[^-0-9.]/g : /[^-0-9]/g;
46
35
  return value.replace(regExp, '');
47
36
  }
48
-
49
37
  var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
50
38
  type: 'text',
51
39
  defaultValue: '',
@@ -80,89 +68,80 @@ var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
80
68
  slotButton: null,
81
69
  slotInput: null
82
70
  });
83
-
84
71
  var Input = function Input(props) {
85
72
  var _useConfig = useConfig(),
86
- locale = _useConfig.locale;
87
-
73
+ locale = _useConfig.locale;
88
74
  var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
89
- children = _defaultProps$props.children,
90
- type = _defaultProps$props.type,
91
- defaultValue = _defaultProps$props.defaultValue,
92
- placeholder = _defaultProps$props.placeholder,
93
- label = _defaultProps$props.label,
94
- labelClass = _defaultProps$props.labelClass,
95
- labelWidth = _defaultProps$props.labelWidth,
96
- labelAlign = _defaultProps$props.labelAlign,
97
- colon = _defaultProps$props.colon,
98
- inputAlign = _defaultProps$props.inputAlign,
99
- center = _defaultProps$props.center,
100
- required = _defaultProps$props.required,
101
- disabled = _defaultProps$props.disabled,
102
- readonly = _defaultProps$props.readonly,
103
- error = _defaultProps$props.error,
104
- maxlength = _defaultProps$props.maxlength,
105
- leftIcon = _defaultProps$props.leftIcon,
106
- leftIconSize = _defaultProps$props.leftIconSize,
107
- rightIcon = _defaultProps$props.rightIcon,
108
- rightIconSize = _defaultProps$props.rightIconSize,
109
- clearable = _defaultProps$props.clearable,
110
- clearIcon = _defaultProps$props.clearIcon,
111
- clearSize = _defaultProps$props.clearSize,
112
- border = _defaultProps$props.border,
113
- formatTrigger = _defaultProps$props.formatTrigger,
114
- rules = _defaultProps$props.rules,
115
- errorMessage = _defaultProps$props.errorMessage,
116
- errorMessageAlign = _defaultProps$props.errorMessageAlign,
117
- showWordLimit = _defaultProps$props.showWordLimit,
118
- autofocus = _defaultProps$props.autofocus,
119
- style = _defaultProps$props.style,
120
- className = _defaultProps$props.className,
121
- rows = _defaultProps$props.rows,
122
- slotButton = _defaultProps$props.slotButton,
123
- slotInput = _defaultProps$props.slotInput,
124
- change = _defaultProps$props.change,
125
- blur = _defaultProps$props.blur,
126
- focus = _defaultProps$props.focus,
127
- clear = _defaultProps$props.clear,
128
- formatter = _defaultProps$props.formatter,
129
- keypress = _defaultProps$props.keypress,
130
- clickInput = _defaultProps$props.clickInput,
131
- clickLeftIcon = _defaultProps$props.clickLeftIcon,
132
- clickRightIcon = _defaultProps$props.clickRightIcon,
133
- click = _defaultProps$props.click,
134
- iconClassPrefix = _defaultProps$props.iconClassPrefix,
135
- iconFontClassName = _defaultProps$props.iconFontClassName,
136
- rest = _objectWithoutProperties(_defaultProps$props, _excluded);
137
-
75
+ children = _defaultProps$props.children,
76
+ type = _defaultProps$props.type,
77
+ defaultValue = _defaultProps$props.defaultValue,
78
+ placeholder = _defaultProps$props.placeholder,
79
+ label = _defaultProps$props.label,
80
+ labelClass = _defaultProps$props.labelClass,
81
+ labelWidth = _defaultProps$props.labelWidth,
82
+ labelAlign = _defaultProps$props.labelAlign,
83
+ colon = _defaultProps$props.colon,
84
+ inputAlign = _defaultProps$props.inputAlign,
85
+ center = _defaultProps$props.center,
86
+ required = _defaultProps$props.required,
87
+ disabled = _defaultProps$props.disabled,
88
+ readonly = _defaultProps$props.readonly,
89
+ error = _defaultProps$props.error,
90
+ maxlength = _defaultProps$props.maxlength,
91
+ leftIcon = _defaultProps$props.leftIcon,
92
+ leftIconSize = _defaultProps$props.leftIconSize,
93
+ rightIcon = _defaultProps$props.rightIcon,
94
+ rightIconSize = _defaultProps$props.rightIconSize,
95
+ clearable = _defaultProps$props.clearable,
96
+ clearIcon = _defaultProps$props.clearIcon,
97
+ clearSize = _defaultProps$props.clearSize,
98
+ border = _defaultProps$props.border,
99
+ formatTrigger = _defaultProps$props.formatTrigger,
100
+ rules = _defaultProps$props.rules,
101
+ errorMessage = _defaultProps$props.errorMessage,
102
+ errorMessageAlign = _defaultProps$props.errorMessageAlign,
103
+ showWordLimit = _defaultProps$props.showWordLimit,
104
+ autofocus = _defaultProps$props.autofocus,
105
+ style = _defaultProps$props.style,
106
+ className = _defaultProps$props.className,
107
+ rows = _defaultProps$props.rows,
108
+ slotButton = _defaultProps$props.slotButton,
109
+ slotInput = _defaultProps$props.slotInput,
110
+ change = _defaultProps$props.change,
111
+ blur = _defaultProps$props.blur,
112
+ focus = _defaultProps$props.focus,
113
+ clear = _defaultProps$props.clear,
114
+ formatter = _defaultProps$props.formatter,
115
+ keypress = _defaultProps$props.keypress,
116
+ clickInput = _defaultProps$props.clickInput,
117
+ clickLeftIcon = _defaultProps$props.clickLeftIcon,
118
+ clickRightIcon = _defaultProps$props.clickRightIcon,
119
+ click = _defaultProps$props.click,
120
+ iconClassPrefix = _defaultProps$props.iconClassPrefix,
121
+ iconFontClassName = _defaultProps$props.iconFontClassName,
122
+ rest = _objectWithoutProperties(_defaultProps$props, _excluded);
138
123
  locale.placeholder = placeholder || locale.placeholder;
139
-
140
124
  var _useState = useState(''),
141
- _useState2 = _slicedToArray(_useState, 2),
142
- inputValue = _useState2[0],
143
- SetInputValue = _useState2[1];
144
-
125
+ _useState2 = _slicedToArray(_useState, 2),
126
+ inputValue = _useState2[0],
127
+ SetInputValue = _useState2[1];
145
128
  var _useState3 = useState(false),
146
- _useState4 = _slicedToArray(_useState3, 2),
147
- active = _useState4[0],
148
- SetActive = _useState4[1];
149
-
129
+ _useState4 = _slicedToArray(_useState3, 2),
130
+ active = _useState4[0],
131
+ SetActive = _useState4[1];
150
132
  var _useState5 = useState(''),
151
- _useState6 = _slicedToArray(_useState5, 2),
152
- classes = _useState6[0],
153
- setClasses = _useState6[1];
154
-
133
+ _useState6 = _slicedToArray(_useState5, 2),
134
+ classes = _useState6[0],
135
+ setClasses = _useState6[1];
155
136
  var getModelValue = function getModelValue() {
156
137
  return String(inputValue !== null && inputValue !== void 0 ? inputValue : '');
157
138
  };
158
-
159
139
  var inputRef = useRef(null);
160
140
  useLayoutEffect(function () {
161
141
  updateValue(getModelValue(), formatTrigger);
162
142
  });
163
143
  useEffect(function () {
164
144
  setClasses(inputClass);
165
-
166
145
  if (defaultValue) {
167
146
  SetInputValue(defaultValue);
168
147
  }
@@ -177,37 +156,30 @@ var Input = function Input(props) {
177
156
  var prefixCls = 'nut-input';
178
157
  return [prefixCls, "".concat(center ? 'center' : ''), "".concat(disabled ? "".concat(prefixCls, "-disabled") : ''), "".concat(required ? "".concat(prefixCls, "-required") : ''), "".concat(error ? "".concat(prefixCls, "-error") : ''), "".concat(border ? "".concat(prefixCls, "-border") : '')].filter(Boolean).join(' ');
179
158
  }, [disabled, required, error, border]);
180
-
181
159
  var updateValue = function updateValue(value) {
182
160
  var _inputRef$current;
183
-
184
161
  var trigger = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'onChange';
185
162
  var val = value;
186
-
187
163
  if (type === 'digit' || type === 'tel') {
188
164
  val = formatNumber(val, false, false);
189
165
  }
190
-
191
166
  if (type === 'number') {
192
167
  val = formatNumber(val, true, true);
193
168
  }
194
-
195
169
  if (type === 'tel' && !formatter) {
196
170
  var regTel = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/;
197
171
  var regNumber = /[^-0-9]/g;
198
172
  val = !regTel.test(val) && val.length > 11 ? val.substring(0, 11) : val.replace(regNumber, '');
199
173
  }
200
-
201
174
  if (formatter && trigger === formatTrigger) {
202
175
  val = formatter(val);
203
176
  }
204
-
205
177
  if ((inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.value) !== val) {
206
178
  inputRef.current.value = val;
207
- } // if (val !== defaultValue) {
208
-
209
-
210
- SetInputValue(val); // }
179
+ }
180
+ // if (val !== defaultValue) {
181
+ SetInputValue(val);
182
+ // }
211
183
  };
212
184
 
213
185
  var _onFocus = function onFocus(event) {
@@ -215,63 +187,48 @@ var Input = function Input(props) {
215
187
  SetActive(true);
216
188
  focus && focus(val, event);
217
189
  };
218
-
219
190
  var _onInput = function onInput(event) {
220
191
  var val = event.target.value;
221
-
222
192
  if (maxlength && val.length > Number(maxlength)) {
223
193
  val = val.slice(0, Number(maxlength));
224
194
  }
225
-
226
195
  updateValue(val);
227
196
  change && change(val, event);
228
197
  };
229
-
230
198
  var _onBlur = function onBlur(event) {
231
199
  setTimeout(function () {
232
200
  SetActive(false);
233
201
  }, 200);
234
202
  var val = event.target.value;
235
-
236
203
  if (maxlength && val.length > Number(maxlength)) {
237
204
  val = val.slice(0, Number(maxlength));
238
205
  }
239
-
240
206
  updateValue(getModelValue(), 'onBlur');
241
207
  blur && blur(val, event);
242
208
  };
243
-
244
209
  var onClickInput = function onClickInput(event) {
245
210
  clickInput && clickInput(event);
246
211
  };
247
-
248
212
  var onClickLeftIcon = function onClickLeftIcon(event) {
249
213
  clickLeftIcon && clickLeftIcon(event);
250
214
  };
251
-
252
215
  var onClickRightIcon = function onClickRightIcon(event) {
253
216
  clickRightIcon && clickRightIcon(event);
254
217
  };
255
-
256
218
  var resetValidation = function resetValidation() {};
257
-
258
219
  var inputType = function inputType(type) {
259
220
  if (type === 'number') {
260
221
  return 'text';
261
222
  }
262
-
263
223
  if (type === 'digit') {
264
224
  return 'tel';
265
225
  }
266
-
267
226
  return type;
268
227
  };
269
-
270
228
  var handleClear = function handleClear(event) {
271
229
  updateValue('');
272
230
  clear && clear('', event);
273
231
  };
274
-
275
232
  return React__default.createElement("div", _objectSpread(_objectSpread({
276
233
  className: "".concat(classes, " ").concat(className || ''),
277
234
  style: style
@@ -395,7 +352,6 @@ var Input = function Input(props) {
395
352
  }
396
353
  }, errorMessage) : null)));
397
354
  };
398
-
399
355
  Input.defaultProps = defaultProps;
400
356
  Input.displayName = 'NutInput';
401
357
  export { Input as default };