diginet-core-ui 1.4.52-beta.9 → 1.4.53

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 (107) hide show
  1. package/assets/images/menu/dhr/MHRP09N0036.svg +13 -0
  2. package/assets/images/menu/dhr/MHRP09N0037.svg +14 -0
  3. package/assets/images/menu/dhr/MHRP25N0009.svg +15 -0
  4. package/components/accordion/details.js +1 -1
  5. package/components/accordion/group.js +1 -1
  6. package/components/accordion/index.js +1 -1
  7. package/components/accordion/summary.js +1 -1
  8. package/components/alert/index.js +1 -1
  9. package/components/alert/notify.js +1 -1
  10. package/components/avatar/index.js +2 -2
  11. package/components/badge/index.js +1 -1
  12. package/components/breadcrumb/index.js +1 -1
  13. package/components/button/icon.js +1 -1
  14. package/components/button/index.js +1 -1
  15. package/components/button/more.js +2 -2
  16. package/components/button/ripple-effect.js +1 -1
  17. package/components/card/body.js +1 -1
  18. package/components/card/extra.js +1 -1
  19. package/components/card/footer.js +1 -1
  20. package/components/card/header.js +1 -1
  21. package/components/card/index.js +1 -1
  22. package/components/chart/Pie/Circle.js +1 -1
  23. package/components/chart/Pie/Sector.js +1 -1
  24. package/components/chart/Pie/index.js +1 -1
  25. package/components/chart/Pie-v2/Circle.js +1 -1
  26. package/components/chart/Pie-v2/Sector.js +1 -1
  27. package/components/chart/Pie-v2/index.js +1 -1
  28. package/components/chart/bar/Bar.js +1 -1
  29. package/components/chart/bar/index.js +1 -1
  30. package/components/chart/bar-v2/Bar.js +1 -1
  31. package/components/chart/bar-v2/index.js +1 -1
  32. package/components/chart/line/index.js +1 -1
  33. package/components/chart/line-v2/index.js +1 -1
  34. package/components/check-text/index.js +1 -1
  35. package/components/check-text/interview-confirmation.js +1 -1
  36. package/components/check-text/interview-status.js +1 -1
  37. package/components/chip/index.js +1 -1
  38. package/components/collapse/index.js +1 -1
  39. package/components/divider/index.js +1 -1
  40. package/components/form-control/attachment/index.js +3 -3
  41. package/components/form-control/calendar/function.js +1 -1
  42. package/components/form-control/calendar/index.js +2 -2
  43. package/components/form-control/calendar/range.js +1 -1
  44. package/components/form-control/checkbox/index.js +1 -1
  45. package/components/form-control/control/index.js +1 -1
  46. package/components/form-control/date-input/index.js +1 -1
  47. package/components/form-control/date-picker/index.js +1 -1
  48. package/components/form-control/date-range-picker/index.js +1 -1
  49. package/components/form-control/dropdown/index.js +1 -1
  50. package/components/form-control/dropdown-box/index.js +22 -64
  51. package/components/form-control/form-group/index.js +1 -1
  52. package/components/form-control/helper-text/index.js +1 -1
  53. package/components/form-control/input-base/UncontrolledInputBase.js +1 -1
  54. package/components/form-control/input-base/index.js +1 -1
  55. package/components/form-control/label/index.js +1 -1
  56. package/components/form-control/money-input/index.js +28 -11
  57. package/components/form-control/number-input/index2.js +24 -27
  58. package/components/form-control/password-input/index.js +1 -1
  59. package/components/form-control/phone-input/index.js +1 -1
  60. package/components/form-control/radio/index.js +1 -1
  61. package/components/form-control/text-input/index.js +1 -1
  62. package/components/form-control/time-picker/index.js +1 -1
  63. package/components/form-control/time-picker/v2/index.js +1 -1
  64. package/components/form-control/toggle/index.js +1 -1
  65. package/components/form-view/input.js +1 -1
  66. package/components/grid/index.js +1 -1
  67. package/components/image/index.js +1 -1
  68. package/components/list/list-item-action.js +1 -1
  69. package/components/list/list-item-icon.js +1 -1
  70. package/components/list/list-item-text.js +1 -1
  71. package/components/list/list-item.js +1 -1
  72. package/components/list/list.js +1 -1
  73. package/components/list/sub-header.js +1 -1
  74. package/components/modal/body.js +1 -1
  75. package/components/modal/footer.js +1 -1
  76. package/components/modal/header.js +1 -1
  77. package/components/modal/index.js +1 -1
  78. package/components/modal/modal.js +1 -1
  79. package/components/others/option-wrapper/index.js +1 -1
  80. package/components/paging/page-info.js +1 -1
  81. package/components/paging/page-selector.js +1 -1
  82. package/components/paper/index.js +1 -1
  83. package/components/popover/body.js +1 -1
  84. package/components/popover/footer.js +1 -1
  85. package/components/popover/header.js +1 -1
  86. package/components/popover/index.js +14 -14
  87. package/components/popup/index.js +1 -1
  88. package/components/popup/v2/index.js +1 -1
  89. package/components/progress/circular.js +1 -1
  90. package/components/progress/linear.js +1 -1
  91. package/components/rating/index.js +1 -1
  92. package/components/skeleton/index.js +1 -1
  93. package/components/slider/slider-container.js +1 -1
  94. package/components/slider/slider-item.js +1 -1
  95. package/components/status/index.js +1 -1
  96. package/components/tab/tab-container.js +1 -1
  97. package/components/tab/tab-header.js +1 -1
  98. package/components/tab/tab-panel.js +1 -1
  99. package/components/tab/tab.js +1 -1
  100. package/components/tooltip/index.js +1 -1
  101. package/components/transfer/index.js +1 -1
  102. package/components/tree-view/index.js +1 -1
  103. package/components/typography/index.js +1 -1
  104. package/icons/effect.js +1 -1
  105. package/icons/menu/v2/index.js +1 -1
  106. package/package.json +44 -78
  107. package/readme.md +7 -0
@@ -1,16 +1,14 @@
1
1
  /** @jsxRuntime classic */
2
2
  /** @jsx jsx */
3
3
  import { css, jsx } from '@emotion/core';
4
- import { ButtonIcon, InputBase, Label, Popover, PopoverBody, HelperText } from "../..";
4
+ import { ButtonIcon, InputBase, Label, Popover, PopoverBody } from "../..";
5
5
  import PropTypes from 'prop-types';
6
- import { Fragment, forwardRef, memo, useEffect, useImperativeHandle, useLayoutEffect, useRef, useState, useMemo } from 'react';
6
+ import { Fragment, forwardRef, memo, useEffect, useImperativeHandle, useLayoutEffect, useRef, useState } from 'react';
7
7
  import { animation, borderColor, displayBlock, overflowHidden, parseHeight, parseMinWidth, positionRelative, scaleX } from "../../../styles/general";
8
8
  import { useTheme } from "../../../theme";
9
9
  import useThemeProps from "../../../theme/utils/useThemeProps";
10
10
  import { classNames, getProp } from "../../../utils";
11
- const regexBetween = /[^{}]+(?=})/g;
12
- const regexInclude = /{|}/g;
13
- const DropdownBox = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
11
+ const DropdownBox = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
14
12
  if (!reference) reference = useRef(null);
15
13
  const theme = useTheme();
16
14
  const {
@@ -24,14 +22,10 @@ const DropdownBox = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, referenc
24
22
  });
25
23
  const {
26
24
  action = {},
27
- allowInput,
28
25
  bgColor: bgColorProp,
29
26
  children,
30
27
  className,
31
28
  delayOnInput,
32
- disabled,
33
- displayExpr: displayExprProp,
34
- error,
35
29
  endIcon,
36
30
  inputProps,
37
31
  inputRef,
@@ -45,19 +39,10 @@ const DropdownBox = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, referenc
45
39
  placeholder,
46
40
  startIcon,
47
41
  style,
48
- value: valueProps,
49
- valueExpr,
50
- viewType,
51
- helperTextProps
42
+ value,
43
+ viewType
52
44
  } = props;
53
- let displayExpr = displayExprProp;
54
45
  const bgColor = typeof bgColorProp === 'string' ? getProp(colors, bgColorProp, bgColorProp) : bgColorProp;
55
- const ErrorView = useMemo(() => {
56
- return error ? jsx(HelperText, {
57
- ...helperTextProps,
58
- disabled: disabled
59
- }, error) : null;
60
- }, [disabled, error, helperTextProps]);
61
46
  const ref = useRef(null);
62
47
  const dropdownBoxRef = useRef(null);
63
48
  const timer = useRef(null);
@@ -100,28 +85,6 @@ const DropdownBox = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, referenc
100
85
  onClosed === null || onClosed === void 0 ? void 0 : onClosed();
101
86
  }
102
87
  };
103
-
104
- /**
105
- * Chuyển đổi data thành giá trị cần hiện thị dựa vào displayExpr [string, string object {field} - {field}], renderSelectedItem, displayExpr, valueExpr
106
- * @param data {object} rowData of dataSource
107
- * @return {string}
108
- */
109
- const displayValue = data => {
110
- let text = '';
111
- if (data || data === 0) {
112
- displayExpr = displayExpr || valueExpr;
113
- let mask = data === null || data === void 0 ? void 0 : data[displayExpr];
114
- // convert {id} - {name} to {<data[id]>} - {<data[name]>}
115
- if (!mask && regexBetween.test(displayExpr)) {
116
- var _displayExpr;
117
- mask = (_displayExpr = displayExpr) === null || _displayExpr === void 0 ? void 0 : _displayExpr.replace(regexBetween, _ => (data === null || data === void 0 ? void 0 : data[_]) || '');
118
- } else if (!mask) {
119
- mask = typeof data !== 'object' ? data : '';
120
- }
121
- text = mask.toString().replace(regexInclude, '');
122
- }
123
- return text;
124
- };
125
88
  useLayoutEffect(() => {
126
89
  if (ref.current) {
127
90
  const {
@@ -167,17 +130,15 @@ const DropdownBox = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, referenc
167
130
  onClick: openOnClickAt === 'icon' ? onTriggerDropdown : null
168
131
  }) : null;
169
132
  };
170
- const value = displayValue(valueProps);
171
133
  return jsx(Fragment, null, jsx("div", {
172
134
  ref: ref,
173
135
  css: _DropdownBoxRootCSS,
174
- className: classNames('DGN-UI-Dropdown-Box', className, error && 'error'),
136
+ className: classNames('DGN-UI-Dropdown-Box', className),
175
137
  style: style
176
138
  }, label ? jsx(Label, {
177
139
  ...labelProps
178
140
  }, label) : null, jsx(InputBase, {
179
141
  ...inputProps,
180
- readOnly: !allowInput,
181
142
  style: inputStyle,
182
143
  viewType: viewType,
183
144
  inputRef: inputRef,
@@ -196,7 +157,7 @@ const DropdownBox = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, referenc
196
157
  anchor: ref.current,
197
158
  width: popoverWidth,
198
159
  onClose: closeDropdownBox
199
- }, jsx(PopoverBody, null, children)), ErrorView);
160
+ }, jsx(PopoverBody, null, children)));
200
161
  }));
201
162
  const DropdownBoxRootCSS = (bgColorProp, {
202
163
  colors
@@ -205,17 +166,6 @@ const DropdownBoxRootCSS = (bgColorProp, {
205
166
  ${positionRelative};
206
167
  ${parseMinWidth(150)};
207
168
  ${parseHeight('max-content')};
208
- &.error {
209
- .DGN-UI-InputBase {
210
- ${borderColor(getProp(colors, 'semantic/danger'))};
211
- &::before {
212
- ${borderColor(getProp(colors, 'semantic/danger'))};
213
- }
214
- &::after {
215
- ${borderColor(getProp(colors, 'semantic/danger'))};
216
- }
217
- }
218
- }
219
169
  .DGN-UI-InputBase {
220
170
  background: ${bgColorProp ? bgColorProp === true ? getProp(colors, 'fill/disabled') : bgColorProp : 'inherit'} !important;
221
171
  ${openState && css`
@@ -233,6 +183,20 @@ const DropdownBoxCSS = ({
233
183
  margin-top: ${spacing([1])};
234
184
  ${overflowHidden};
235
185
  `;
186
+
187
+ // DropdownBox.defaultProps = {
188
+ // className: '',
189
+ // label: '',
190
+ // placeholder: '',
191
+ // startIcon: 'Search',
192
+ // endIcon: 'ArrowDown',
193
+ // openOnClickAt: 'icon',
194
+ // viewType: 'underlined',
195
+ // inputProps: {},
196
+ // delayOnInput: 700,
197
+ // zIndex: zIndexCORE(1),
198
+ // };
199
+
236
200
  DropdownBox.propTypes = {
237
201
  /** class for dropdown */
238
202
  className: PropTypes.string,
@@ -269,12 +233,6 @@ DropdownBox.propTypes = {
269
233
  /** the function will run after open */
270
234
  onOpened: PropTypes.func,
271
235
  /** the function will run after close */
272
- onClosed: PropTypes.func,
273
- /** Error message displayed below the input. */
274
- error: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),
275
- /** If `true`, the component is disabled. */
276
- disabled: PropTypes.bool,
277
- /** If `true`, the input is enable. */
278
- allowInput: PropTypes.bool
236
+ onClosed: PropTypes.func
279
237
  };
280
238
  export default DropdownBox;
@@ -4,7 +4,7 @@ import { css, jsx } from '@emotion/core';
4
4
  import PropTypes from 'prop-types';
5
5
  import { Children, forwardRef, memo, useEffect, useImperativeHandle, useRef } from 'react';
6
6
  import { useTheme } from "../../../theme";
7
- const FormGroup = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(({
7
+ const FormGroup = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
8
8
  fullWidth,
9
9
  oneHelperText,
10
10
  marginRight,
@@ -9,7 +9,7 @@ import { useTheme } from "../../../theme";
9
9
  import useThemeProps from "../../../theme/utils/useThemeProps";
10
10
  import { classNames, getProp } from "../../../utils";
11
11
  const colorMap = new Map([['default', 'semantic/danger'], ['success', 'semantic/success'], ['warning', 'semantic/warning'], ['danger', 'semantic/danger'], ['info', 'semantic/info']]);
12
- const HelperText = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
12
+ const HelperText = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
13
13
  if (!reference) reference = useRef(null);
14
14
  const theme = useTheme();
15
15
  const {
@@ -9,7 +9,7 @@ import { bgColor, border, borderBottom, borderBottomColor, borderColor, borderNo
9
9
  import { useTheme } from "../../../theme";
10
10
  import useThemeProps from "../../../theme/utils/useThemeProps";
11
11
  import { classNames, refType as ref, getProp } from "../../../utils";
12
- const UncontrolledInputBase = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
12
+ const UncontrolledInputBase = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
13
13
  if (!reference) reference = useRef(null);
14
14
  const theme = useTheme();
15
15
  const {
@@ -9,7 +9,7 @@ import { bgColor, bgTransparent, border, borderBottom, borderBottomColor, border
9
9
  import { useTheme } from "../../../theme";
10
10
  import useThemeProps from "../../../theme/utils/useThemeProps";
11
11
  import { classNames, refType as ref, useInput, getProp } from "../../../utils";
12
- const InputBase = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
12
+ const InputBase = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
13
13
  if (!reference) reference = useRef(null);
14
14
  const theme = useTheme();
15
15
  const {
@@ -9,7 +9,7 @@ import { flexRow, parseMinHeight, typographyTypes } from "../../../styles/genera
9
9
  import { useTheme } from "../../../theme";
10
10
  import useThemeProps from "../../../theme/utils/useThemeProps";
11
11
  import { classNames, getProp } from "../../../utils";
12
- const Label = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
12
+ const Label = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
13
13
  if (!reference) reference = useRef(null);
14
14
  const theme = useTheme();
15
15
  const {
@@ -72,7 +72,7 @@ const num2WordsEn = n => {
72
72
  if (n === '0') return 'zero';
73
73
  return comp(chunk(3))(reverse)(arr(n)).map(makeGroup).map(thousand).filter(comp(not)(isEmpty)).reverse().join(' ');
74
74
  };
75
- const MoneyInput = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
75
+ const MoneyInput = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
76
76
  if (!reference) reference = useRef(null);
77
77
 
78
78
  // props priority: `inProps` > `themeDefaultProps`
@@ -116,6 +116,7 @@ const MoneyInput = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference
116
116
  viewType,
117
117
  defaultValue,
118
118
  value,
119
+ fixedDecimalDigit,
119
120
  ...other
120
121
  } = props;
121
122
  const ref = useRef(null);
@@ -145,7 +146,7 @@ const MoneyInput = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference
145
146
  if (decimal && decimal.length > decimalDigit) {
146
147
  if (decimalDigit) {
147
148
  decimal = decimal.slice(0, decimalDigit);
148
- return number + decimalSymbol + decimal;
149
+ return parseValueWithFix(number + decimalSymbol + decimal);
149
150
  } else {
150
151
  return number;
151
152
  }
@@ -332,11 +333,24 @@ const MoneyInput = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference
332
333
  if (value === null) {
333
334
  inputRef.current.value = '';
334
335
  } else {
335
- const v = getValueWithDecimal(value.toString().replace('.', decimalSymbol));
336
+ let number = value;
337
+ if (fixedDecimalDigit && !!decimalDigit) {
338
+ var _strVal$split;
339
+ const strVal = String(value);
340
+ const isDecimalNum = strVal.indexOf('.') > -1 && (((_strVal$split = strVal.split('.')) === null || _strVal$split === void 0 ? void 0 : _strVal$split[1]) || '').length >= decimalDigit;
341
+ if (isDecimalNum) {
342
+ const coreToFixed = (num, precision) => {
343
+ return (+(Math.round(+(num + 'e' + precision)) + 'e' + -precision)).toFixed(precision);
344
+ };
345
+ const val = coreToFixed(Number(String(value).replace(thousandSeparator, '')), decimalDigit);
346
+ number = String(val);
347
+ }
348
+ }
349
+ const v = getValueWithDecimal(number.toString().replace('.', decimalSymbol));
336
350
  if (convertToWords && !decimalDigit && (disabled || readOnly)) {
337
351
  let valueConverted = getGlobal('helperInvalid');
338
- if (Number.isInteger(value)) {
339
- valueConverted = locale.get() === 'vi' ? num2WordsVi.convert(value) : num2WordsEn(value);
352
+ if (Number.isInteger(number)) {
353
+ valueConverted = locale.get() === 'vi' ? num2WordsVi.convert(number) : num2WordsEn(number);
340
354
  }
341
355
  inputRef.current.value = parseValueWithFix(valueConverted);
342
356
  } else {
@@ -345,11 +359,12 @@ const MoneyInput = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference
345
359
  }
346
360
  }
347
361
  }, [disabled, readOnly, value, prefix, suffix]);
348
- useEffect(() => {
349
- const valueInput = inputRef.current.value;
350
- inputRef.current.value = getValueWithDecimal(valueInput);
351
- }, [decimalDigit]);
352
- /* End handler */
362
+
363
+ // useEffect(() => {
364
+ // const valueInput = inputRef.current.value;
365
+ // inputRef.current.value = getValueWithDecimal(valueInput);
366
+ // }, [decimalDigit]);
367
+ // /* End handler */
353
368
 
354
369
  useImperativeHandle(reference, () => {
355
370
  const currentRef = ref.current || {};
@@ -508,6 +523,8 @@ MoneyInput.propTypes = {
508
523
  /** [Props](https://core.diginet.com.vn/ui/?path=/docs/form-control-text-label) of label. */
509
524
  labelProps: PropTypes.object,
510
525
  /** [Props](https://core.diginet.com.vn/ui/?path=/story/form-control-text-helpertext) of helper text. */
511
- helperTextProps: PropTypes.object
526
+ helperTextProps: PropTypes.object,
527
+ /** If `true`, decimal digit is fixed. */
528
+ fixedDecimalDigit: PropTypes.bool
512
529
  };
513
530
  export default MoneyInput;
@@ -49,7 +49,7 @@ const NumberInput = /*#__PURE__*/forwardRef((inProps, reference) => {
49
49
  labelProps,
50
50
  max: maxProp,
51
51
  maxDigit,
52
- min: minProp,
52
+ min,
53
53
  nonStyle,
54
54
  onBlur,
55
55
  onChange,
@@ -69,17 +69,13 @@ const NumberInput = /*#__PURE__*/forwardRef((inProps, reference) => {
69
69
  viewType
70
70
  } = props;
71
71
  let max = maxProp;
72
- let min = minProp;
73
72
  let thousandSymbol = thousandSeparator;
74
73
  let decimalSymbol = decimalSymbolProp;
75
74
  let valueProps = valueProp;
76
- if (!min && min !== 0) min = -Infinity;
77
- if (!max && max !== 0) max = Infinity;
78
75
  const pos = useRef(null);
79
76
  const ref = useRef(null);
80
77
  const globalRef = useRef({});
81
78
  const inputRef = useRef(null);
82
- const inputTimer = useRef(null);
83
79
  const [value, setValue] = useState(defaultValue);
84
80
  const [error, setError] = useState(errorProp);
85
81
  const _NumberInputRootCSS = NumberInputRootCSS(theme);
@@ -123,7 +119,7 @@ const NumberInput = /*#__PURE__*/forwardRef((inProps, reference) => {
123
119
  const coreToFixed = (num, precision) => {
124
120
  return (+(Math.round(+(num + 'e' + precision)) + 'e' + -precision)).toFixed(precision);
125
121
  };
126
- const val = coreToFixed(Number(vl.replace(thousandSymbol, '')), decimalDigit);
122
+ const val = coreToFixed(Number(String(vl).replaceAll(thousandSymbol, '')), decimalDigit);
127
123
  number = String(val);
128
124
  }
129
125
  }
@@ -185,7 +181,7 @@ const NumberInput = /*#__PURE__*/forwardRef((inProps, reference) => {
185
181
  if (flag) _onChange(e);
186
182
  }, [min, max, decimalDigit]);
187
183
  const _onBlur = useCallback(e => {
188
- var _e$value;
184
+ var _e$value, _e$value2;
189
185
  let value = (_e$value = e.value) !== null && _e$value !== void 0 ? _e$value : e.target.value;
190
186
  if (fixedDecimalDigit) value = Number(value).toFixed(decimalDigit);
191
187
  value = convertMoneyToNumber(value);
@@ -197,6 +193,15 @@ const NumberInput = /*#__PURE__*/forwardRef((inProps, reference) => {
197
193
  target
198
194
  }, true);
199
195
  }
196
+ if (((_e$value2 = e.value) !== null && _e$value2 !== void 0 ? _e$value2 : e.target.value).slice(-1) === decimalSymbol) {
197
+ var _e$value3;
198
+ const target = e.target;
199
+ target.value = Number(String((_e$value3 = e.value) !== null && _e$value3 !== void 0 ? _e$value3 : e.target.value).replaceAll(thousandSymbol, ''));
200
+ _onInput({
201
+ ...e,
202
+ target
203
+ }, true);
204
+ }
200
205
  onBlur && onBlur(e);
201
206
  }, [min, max]);
202
207
  const _onKeyDown = e => {
@@ -284,26 +289,18 @@ const NumberInput = /*#__PURE__*/forwardRef((inProps, reference) => {
284
289
  onFocus && onFocus(e);
285
290
  };
286
291
  const _onChange = e => {
287
- if (delayOnChange) {
288
- var _e$target;
289
- if (inputTimer.current) clearTimeout(inputTimer.current);
290
- const target = e.target;
291
- target.value = globalRef.current.valueString;
292
- target.valueString = globalRef.current.returnValue;
293
- // eslint-disable-next-line no-extra-boolean-cast
294
- if (!!((_e$target = e.target) !== null && _e$target !== void 0 && _e$target.valueString)) {
295
- if (e.target.valueString.includes(decimalSymbol) && e.target.valueString.split(decimalSymbol)[1] === '') {
296
- return;
297
- }
298
- }
299
- inputTimer.current = setTimeout(() => {
300
- onChange({
301
- ...e,
302
- value: globalRef.current.value,
303
- target
304
- });
305
- }, delayOnChange);
292
+ const target = e.target;
293
+ target.value = globalRef.current.valueString;
294
+ target.valueString = globalRef.current.returnValue;
295
+ // eslint-disable-next-line no-extra-boolean-cast
296
+ if (String(e.target.valueString).slice(-1) === decimalSymbol) {
297
+ return;
306
298
  }
299
+ onChange({
300
+ ...e,
301
+ value: globalRef.current.value,
302
+ target
303
+ });
307
304
  };
308
305
  const validateResult = validates && onValidate(Number(convertMoneyToNumber(value) || 0), validates, true);
309
306
  useEffect(() => {
@@ -403,7 +400,7 @@ const NumberInputRootCSS = ({
403
400
  }
404
401
  `;
405
402
  NumberInput.defaultProps = {
406
- delayOnChange: 500
403
+ // delayOnChange: 500,
407
404
  // autoFocus: false,
408
405
  // className: '',
409
406
  // decimalDigit: Infinity,
@@ -8,7 +8,7 @@ import { cursorNotAllowed, displayBlock, positionRelative } from "../../../style
8
8
  import { useTheme } from "../../../theme";
9
9
  import useThemeProps from "../../../theme/utils/useThemeProps";
10
10
  import { classNames, onValidate, refType as ref } from "../../../utils";
11
- const PasswordInput = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
11
+ const PasswordInput = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
12
12
  if (!reference) reference = useRef(null);
13
13
  const theme = useTheme();
14
14
 
@@ -17,7 +17,7 @@ const ensigns = {
17
17
  mark: '____ _______'
18
18
  }
19
19
  };
20
- const PhoneInput = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(({
20
+ const PhoneInput = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
21
21
  viewType,
22
22
  ensign,
23
23
  required,
@@ -8,7 +8,7 @@ import { boxBorder, cursorNoDrop, cursorPointer, displayBlock, displayNone, posi
8
8
  import { useTheme } from "../../../theme";
9
9
  import useThemeProps from "../../../theme/utils/useThemeProps";
10
10
  import { classNames, getProp, randomString } from "../../../utils";
11
- const Radio = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
11
+ const Radio = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
12
12
  if (!reference) reference = useRef(null);
13
13
  const theme = useTheme();
14
14
  const {
@@ -8,7 +8,7 @@ import { cursorNotAllowed, displayBlock, positionRelative } from "../../../style
8
8
  import { useTheme } from "../../../theme";
9
9
  import useThemeProps from "../../../theme/utils/useThemeProps";
10
10
  import { classNames, onValidate, refType as ref } from "../../../utils";
11
- const TextInput = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
11
+ const TextInput = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
12
12
  if (!reference) reference = useRef(null);
13
13
  const theme = useTheme();
14
14
 
@@ -73,7 +73,7 @@ const getValue = value => {
73
73
  }
74
74
  return new Date();
75
75
  };
76
- const TimePicker = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(({
76
+ const TimePicker = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
77
77
  activeHeight,
78
78
  activeWidth,
79
79
  allowSeconds,
@@ -9,7 +9,7 @@ import { bgColor, border, borderColor, borderNone, borderRadius4px, displayFlex,
9
9
  import { useTheme } from "../../../../theme";
10
10
  import useThemeProps from "../../../../theme/utils/useThemeProps";
11
11
  import { classNames, date, getProp, hexToRGBA } from "../../../../utils";
12
- const TimePicker = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
12
+ const TimePicker = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
13
13
  if (!reference) reference = useRef(null);
14
14
 
15
15
  // props priority: `inProps` > `themeDefaultProps`
@@ -8,7 +8,7 @@ import { borderRadius, cursorNoDrop, cursorPointer, displayBlock, flexRow, items
8
8
  import { useTheme } from "../../../theme";
9
9
  import useThemeProps from "../../../theme/utils/useThemeProps";
10
10
  import { classNames, getProp } from "../../../utils";
11
- const Toggle = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
11
+ const Toggle = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
12
12
  if (!reference) reference = useRef(null);
13
13
  const theme = useTheme();
14
14
 
@@ -6,7 +6,7 @@ import { forwardRef, memo, useEffect, useMemo, useRef } from 'react';
6
6
  import { border, borderBottom, borderRadius, bottom, boxBorder, displayFlex, inset, insetX, itemsCenter, parseHeight, pointerEventsNone, positionAbsolute, positionRelative, scale } from "../../styles/general";
7
7
  import { useTheme } from "../../theme";
8
8
  import { formatDate, getProp } from "../../utils";
9
- const InputView = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(({
9
+ const InputView = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
10
10
  inputProps,
11
11
  inputStyleProps,
12
12
  value,
@@ -10,7 +10,7 @@ import { breakpointKeys } from "../../theme/createBreakpoints";
10
10
  import useThemeProps from "../../theme/utils/useThemeProps";
11
11
  import { classNames, handleBreakpoints } from "../../utils";
12
12
  import GridContext from "./context";
13
- const Grid = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
13
+ const Grid = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
14
14
  if (!reference) reference = useRef(null);
15
15
  const theme = useTheme();
16
16
  const {
@@ -15,7 +15,7 @@ const blurKeyframe = keyframes`
15
15
  75% { -webkit-filter: blur(1px);}
16
16
  100% { -webkit-filter: blur(0px);}
17
17
  `;
18
- const Image = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
18
+ const Image = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
19
19
  if (!reference) reference = useRef(null);
20
20
 
21
21
  // props priority: `inProps` > `themeDefaultProps`
@@ -7,7 +7,7 @@ import { forwardRef, memo, useImperativeHandle, useMemo, useRef } from 'react';
7
7
  import { bgColor, boxBorder, displayFlex, itemsCenter, order, parseMaxHeight, positionRelative, textColor, z } from "../../styles/general";
8
8
  import { useTheme } from "../../theme";
9
9
  import { classNames, getProp } from "../../utils";
10
- const ListItemAction = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(({
10
+ const ListItemAction = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
11
11
  children,
12
12
  name,
13
13
  className,
@@ -7,7 +7,7 @@ import { forwardRef, memo, useImperativeHandle, useMemo, useRef } from 'react';
7
7
  import { bgColor, boxBorder, displayFlex, itemsCenter, order, parseMinWidth, positionRelative, textColor, z } from "../../styles/general";
8
8
  import { useTheme } from "../../theme";
9
9
  import { classNames, getProp } from "../../utils";
10
- const ListItemIcon = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(({
10
+ const ListItemIcon = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
11
11
  className,
12
12
  children,
13
13
  name,
@@ -6,7 +6,7 @@ import PropTypes from 'prop-types';
6
6
  import { forwardRef, memo, useImperativeHandle, useMemo, useRef } from 'react';
7
7
  import { bgColor, boxBorder, displayFlex, itemsCenter, order, positionRelative } from "../../styles/general";
8
8
  import { classNames } from "../../utils";
9
- const ListItemText = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(({
9
+ const ListItemText = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
10
10
  className,
11
11
  children,
12
12
  style,
@@ -7,7 +7,7 @@ import { forwardRef, memo, useEffect, useImperativeHandle, useMemo, useRef } fro
7
7
  import { bgColor, boxBorder, cursorPointer, displayFlex, flexRow, itemsCenter, overflowHidden, parseMaxWidth, parseMinHeight, parseWidthHeight, positionRelative, textColor, userSelectNone } from "../../styles/general";
8
8
  import { useTheme } from "../../theme";
9
9
  import { classNames, getProp } from "../../utils";
10
- const ListItem = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(({
10
+ const ListItem = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
11
11
  children,
12
12
  className,
13
13
  style,
@@ -7,7 +7,7 @@ import { bgColor, borderRadius, boxBorder, displayBlock, parseMaxHeight, parseMa
7
7
  import { useTheme } from "../../theme";
8
8
  import { classNames, getProp } from "../../utils";
9
9
  const levels = [0, 1, 'second', 'third', 'fourth', 'fifth'];
10
- const List = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(({
10
+ const List = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
11
11
  className,
12
12
  width,
13
13
  maxWidth,
@@ -6,7 +6,7 @@ import PropTypes from 'prop-types';
6
6
  import { forwardRef, memo, useImperativeHandle, useMemo, useRef } from 'react';
7
7
  import { bgColor, boxBorder, displayBlock, parseWidthHeight, positionSticky, textLeft, top, userSelectNone, z } from "../../styles/general";
8
8
  import { useTheme } from "../../theme";
9
- const ListSubHeader = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(({
9
+ const ListSubHeader = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
10
10
  children,
11
11
  style,
12
12
  ...props
@@ -9,7 +9,7 @@ import sx from "../../styles/sx";
9
9
  import useThemeProps from "../../theme/utils/useThemeProps";
10
10
  import { classNames } from "../../utils";
11
11
  import { sxResponsivePadding } from "./header";
12
- const ModalBody = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
12
+ const ModalBody = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
13
13
  if (!reference) reference = useRef(null);
14
14
 
15
15
  // props priority: `inProps` > `themeDefaultProps`
@@ -9,7 +9,7 @@ import sx from "../../styles/sx";
9
9
  import useThemeProps from "../../theme/utils/useThemeProps";
10
10
  import { classNames } from "../../utils";
11
11
  import { sxResponsivePadding } from "./header";
12
- const ModalFooter = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
12
+ const ModalFooter = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
13
13
  if (!reference) reference = useRef(null);
14
14
 
15
15
  // props priority: `inProps` > `themeDefaultProps`
@@ -17,7 +17,7 @@ export const sxResponsivePadding = {
17
17
  md: [4, 6]
18
18
  }
19
19
  };
20
- const ModalHeader = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
20
+ const ModalHeader = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
21
21
  if (!reference) reference = useRef(null);
22
22
  const theme = useTheme();
23
23
  const {
@@ -5,7 +5,7 @@ import Body from "./body";
5
5
  import Footer from "./footer";
6
6
  import Header from "./header";
7
7
  import Modal from "./modal";
8
- const ModalSample = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(({
8
+ const ModalSample = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
9
9
  action = {},
10
10
  bodyStyle,
11
11
  children,
@@ -13,7 +13,7 @@ import { classNames, getProp, hexToRGBA, useDelayUnmount } from "../../utils";
13
13
  import ModalContext from "./context";
14
14
  const fadeInDown = animations.fadeInDown;
15
15
  const fadeOutUp = animations.fadeOutUp;
16
- const Modal = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((inProps, reference) => {
16
+ const Modal = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((inProps, reference) => {
17
17
  if (!reference) reference = useRef(null);
18
18
  const theme = useTheme();
19
19
  const {
@@ -4,7 +4,7 @@ import { jsx } from '@emotion/core';
4
4
  import { forwardRef, memo, useEffect, useState } from 'react';
5
5
  import sx from "../../../styles/sx";
6
6
  const OptionWrapper = Component => {
7
- const WrappedComponent = /*#__PURE__*/memo(/*#__PURE__*/forwardRef((props, ref) => {
7
+ const WrappedComponent = /*#__PURE__*/memo( /*#__PURE__*/forwardRef((props, ref) => {
8
8
  const [options, setOptions] = useState({});
9
9
  const option = (option, optionValue) => {
10
10
  if (typeof option === 'undefined') {
@@ -17,7 +17,7 @@ const getLastPage = (totalItems, itemsPerPage) => {
17
17
  }
18
18
  return _lastPage + 1;
19
19
  };
20
- const PagingInfo = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(({
20
+ const PagingInfo = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
21
21
  action = {},
22
22
  bgColor: bgColorProp,
23
23
  className,