armtek-uikit-react 1.0.188 → 1.0.189

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.
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"armtek-uikit-react","version":"1.0.188","description":"Armtek UIKit for React","main":"cjs/index.js","module":"esm/index.js","types":"esm/index.d.ts","repository":{"type":"git","url":"ssh://git@gl.corp:10022/int/uikit/uikit_react.git"},"author":"","license":"ISC","dependencies":{"clsx":"^2.0.0","rc-slider":"^10.2.1","react":"*","react-datepicker":"4.16.0","react-dom":"*","react-transition-group":"^4.4.5"},"peerDependencies":{"react":"*","react-dom":"*"},"engines":{"node":">=14.0.0"},"scripts":{"pub":"npm version patch && npm publish"}}
1
+ {"name":"armtek-uikit-react","version":"1.0.189","description":"Armtek UIKit for React","main":"cjs/index.js","module":"esm/index.js","types":"esm/index.d.ts","repository":{"type":"git","url":"ssh://git@gl.corp:10022/int/uikit/uikit_react.git"},"author":"","license":"ISC","dependencies":{"clsx":"^2.0.0","rc-slider":"^10.2.1","react":"*","react-datepicker":"4.16.0","react-dom":"*","react-transition-group":"^4.4.5"},"peerDependencies":{"react":"*","react-dom":"*"},"engines":{"node":">=14.0.0"},"scripts":{"pub":"npm version patch && npm publish"}}
@@ -43,6 +43,7 @@ const DateField = exports.DateField = /*#__PURE__*/(0, _react.forwardRef)((props
43
43
  } = props;
44
44
  let [date, setDate] = (0, _react.useState)(null);
45
45
  let [open, setOpen] = (0, _react.useState)(false);
46
+ const [text, setText] = (0, _react.useState)('');
46
47
  if (showTime && !showTimeOnly) format = 'dd.MM.yyyy HH:mm';else if (showTimeOnly) format = 'HH:mm';
47
48
  const handleChange = d => {
48
49
  setDate(d);
@@ -71,6 +72,24 @@ const DateField = exports.DateField = /*#__PURE__*/(0, _react.forwardRef)((props
71
72
  let dateValue = typeof realValue === 'string' ? new Date(realValue) : realValue;
72
73
  if (!(dateValue instanceof Date && !isNaN(dateValue.getDate()))) dateValue = null;
73
74
 
75
+ //TODO test this callback
76
+ const handleChangeText = e => {
77
+ let value = e.target.value;
78
+ if (value.match(/^\d{2}$/) && !text.endsWith('.')) value = value + '.';
79
+ if (value.match(/^\d{2}\.\d{2}$/) && !text.endsWith('.')) value = value + '.';
80
+ setText(value);
81
+ setDate(null);
82
+ if (value.match(/\d{2}\.\d{2}\.\d{4}/)) {
83
+ const yearParts = value.split('.');
84
+ const timestamp = Date.parse(`${yearParts[2]}-${yearParts[1]}-${yearParts[0]}`);
85
+ if (isNaN(timestamp) === false) {
86
+ const d = new Date(timestamp);
87
+ setText('');
88
+ handleChange(d);
89
+ }
90
+ }
91
+ };
92
+
74
93
  //TODO Подключение Popover ломает тесты, разобраться почему
75
94
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
76
95
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TextField.default, {
@@ -81,8 +100,8 @@ const DateField = exports.DateField = /*#__PURE__*/(0, _react.forwardRef)((props
81
100
  error: error,
82
101
  helperText: helperText,
83
102
  ...inputProps,
84
- value: ((_dateValue = dateValue) == null ? void 0 : _dateValue.toLocaleString('ru-RU', getDateFormat(format))) || '',
85
- onChange: () => null,
103
+ value: ((_dateValue = dateValue) == null ? void 0 : _dateValue.toLocaleString('ru-RU', getDateFormat(format))) || text || '',
104
+ onChange: handleChangeText,
86
105
  endAdornment: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonIcon.default, {
87
106
  size: 'medium',
88
107
  variant: 'transparent',