@activecollab/components 2.0.227 → 2.0.229
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/dist/cjs/components/Input/InputNumber.js.map +1 -1
- package/dist/cjs/components/Input/InputTime.js +53 -12
- package/dist/cjs/components/Input/InputTime.js.map +1 -1
- package/dist/cjs/hooks/useInputNumber.js +77 -45
- package/dist/cjs/hooks/useInputNumber.js.map +1 -1
- package/dist/cjs/utils/currencyUtils.js +1 -0
- package/dist/cjs/utils/currencyUtils.js.map +1 -1
- package/dist/cjs/utils/currencyUtils.test.js +16 -0
- package/dist/cjs/utils/currencyUtils.test.js.map +1 -1
- package/dist/esm/components/Input/InputNumber.d.ts +2 -0
- package/dist/esm/components/Input/InputNumber.d.ts.map +1 -1
- package/dist/esm/components/Input/InputNumber.js.map +1 -1
- package/dist/esm/components/Input/InputTime.d.ts +2 -1
- package/dist/esm/components/Input/InputTime.d.ts.map +1 -1
- package/dist/esm/components/Input/InputTime.js +32 -5
- package/dist/esm/components/Input/InputTime.js.map +1 -1
- package/dist/esm/hooks/useInputNumber.d.ts +8 -6
- package/dist/esm/hooks/useInputNumber.d.ts.map +1 -1
- package/dist/esm/hooks/useInputNumber.js +53 -31
- package/dist/esm/hooks/useInputNumber.js.map +1 -1
- package/dist/esm/utils/currencyUtils.d.ts +1 -1
- package/dist/esm/utils/currencyUtils.d.ts.map +1 -1
- package/dist/esm/utils/currencyUtils.js +1 -0
- package/dist/esm/utils/currencyUtils.js.map +1 -1
- package/dist/esm/utils/currencyUtils.test.js +16 -0
- package/dist/esm/utils/currencyUtils.test.js.map +1 -1
- package/dist/index.js +131 -57
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputNumber.js","names":["_react","_interopRequireWildcard","require","_Input","_hooks","_utils","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","InputNumber","exports","forwardRef","_ref","ref","_ref$decimalLength","decimalLength","_ref$decimalSeparator","decimalSeparator","_ref$disableAbbreviat","disableAbbreviation","disabled","_ref$disableMacros","disableMacros","invalid","_ref$step","step","_ref$thousandSeparato","thousandSeparator","defaultValue","value","onCancel","onSave","externalEnterKeyPress","onEnterKeyPress","allowEmptyValue","externalOnChange","onChange","externalOnClick","onClick","limit","placeholder","_ref$trimDecimals","trimDecimals","min","max","externalOnBlur","onBlur","_ref$update","update","_ref$shortenThreshold","shortenThreshold","rest","inputRef","useRef","handleRef","useForkRef","_useInputNumber","useInputNumber","onKeyDown","onFocus","onDoubleClick","createElement","Input","type","displayName"],"sources":["../../../../src/components/Input/InputNumber.tsx"],"sourcesContent":["import React, { forwardRef, useRef } from \"react\";\n\nimport { Input, InputProps } from \"./Input\";\nimport { IInputNumber, useInputNumber } from \"../../hooks\";\nimport { useForkRef } from \"../../utils\";\n\nexport interface InputNumberProps\n extends Omit<InputProps, \"value\" | \"onChange\" | \"step\" | \"onBlur\">,\n IInputNumber {\n shortenThreshold?: number;\n}\n\nexport const InputNumber = forwardRef<HTMLInputElement, InputNumberProps>(\n (\n {\n decimalLength = 2,\n decimalSeparator = \".\",\n disableAbbreviation = false,\n disabled,\n disableMacros = false,\n invalid,\n step = 1,\n thousandSeparator = \",\",\n value: defaultValue,\n onCancel,\n onSave,\n onEnterKeyPress: externalEnterKeyPress,\n allowEmptyValue,\n onChange: externalOnChange,\n onClick: externalOnClick,\n limit,\n placeholder,\n trimDecimals = true,\n min,\n max,\n onBlur: externalOnBlur,\n update = false,\n shortenThreshold = 1000,\n ...rest\n },\n ref\n ) => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(ref, inputRef);\n\n const {\n value,\n onBlur,\n onKeyDown,\n onChange,\n onClick,\n onFocus,\n onDoubleClick,\n } = useInputNumber(\n {\n decimalLength,\n decimalSeparator,\n disableAbbreviation,\n disableMacros,\n step,\n thousandSeparator,\n onEnterKeyPress: externalEnterKeyPress,\n onChange: externalOnChange,\n onClick: externalOnClick,\n value: defaultValue,\n onCancel,\n onSave,\n allowEmptyValue,\n limit,\n trimDecimals,\n min,\n max,\n onBlur: externalOnBlur,\n update,\n shortenThreshold,\n },\n inputRef\n );\n\n return (\n <Input\n {...rest}\n ref={handleRef}\n placeholder={placeholder}\n value={value}\n type=\"text\"\n disabled={disabled}\n invalid={invalid}\n onChange={onChange}\n onBlur={onBlur}\n onKeyDown={onKeyDown}\n onClick={onClick}\n onDoubleClick={onDoubleClick}\n onFocus={onFocus}\n aria-placeholder={placeholder}\n aria-disabled={disabled}\n aria-invalid={invalid}\n />\n );\n }\n);\n\nInputNumber.displayName = \"InputNumber\";\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"InputNumber.js","names":["_react","_interopRequireWildcard","require","_Input","_hooks","_utils","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","InputNumber","exports","forwardRef","_ref","ref","_ref$decimalLength","decimalLength","_ref$decimalSeparator","decimalSeparator","_ref$disableAbbreviat","disableAbbreviation","disabled","_ref$disableMacros","disableMacros","invalid","_ref$step","step","_ref$thousandSeparato","thousandSeparator","defaultValue","value","onCancel","onSave","externalEnterKeyPress","onEnterKeyPress","allowEmptyValue","externalOnChange","onChange","externalOnClick","onClick","limit","placeholder","_ref$trimDecimals","trimDecimals","min","max","externalOnBlur","onBlur","_ref$update","update","_ref$shortenThreshold","shortenThreshold","rest","inputRef","useRef","handleRef","useForkRef","_useInputNumber","useInputNumber","onKeyDown","onFocus","onDoubleClick","createElement","Input","type","displayName"],"sources":["../../../../src/components/Input/InputNumber.tsx"],"sourcesContent":["import React, { forwardRef, useRef } from \"react\";\n\nimport { Input, InputProps } from \"./Input\";\nimport { IInputNumber, useInputNumber } from \"../../hooks\";\nimport { useForkRef } from \"../../utils\";\n\nexport interface InputNumberProps\n extends Omit<InputProps, \"value\" | \"onChange\" | \"step\" | \"onBlur\">,\n IInputNumber {\n shortenThreshold?: number;\n min?: number;\n max?: number;\n}\n\nexport const InputNumber = forwardRef<HTMLInputElement, InputNumberProps>(\n (\n {\n decimalLength = 2,\n decimalSeparator = \".\",\n disableAbbreviation = false,\n disabled,\n disableMacros = false,\n invalid,\n step = 1,\n thousandSeparator = \",\",\n value: defaultValue,\n onCancel,\n onSave,\n onEnterKeyPress: externalEnterKeyPress,\n allowEmptyValue,\n onChange: externalOnChange,\n onClick: externalOnClick,\n limit,\n placeholder,\n trimDecimals = true,\n min,\n max,\n onBlur: externalOnBlur,\n update = false,\n shortenThreshold = 1000,\n ...rest\n },\n ref\n ) => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(ref, inputRef);\n\n const {\n value,\n onBlur,\n onKeyDown,\n onChange,\n onClick,\n onFocus,\n onDoubleClick,\n } = useInputNumber(\n {\n decimalLength,\n decimalSeparator,\n disableAbbreviation,\n disableMacros,\n step,\n thousandSeparator,\n onEnterKeyPress: externalEnterKeyPress,\n onChange: externalOnChange,\n onClick: externalOnClick,\n value: defaultValue,\n onCancel,\n onSave,\n allowEmptyValue,\n limit,\n trimDecimals,\n min,\n max,\n onBlur: externalOnBlur,\n update,\n shortenThreshold,\n },\n inputRef\n );\n\n return (\n <Input\n {...rest}\n ref={handleRef}\n placeholder={placeholder}\n value={value}\n type=\"text\"\n disabled={disabled}\n invalid={invalid}\n onChange={onChange}\n onBlur={onBlur}\n onKeyDown={onKeyDown}\n onClick={onClick}\n onDoubleClick={onDoubleClick}\n onFocus={onFocus}\n aria-placeholder={placeholder}\n aria-disabled={disabled}\n aria-invalid={invalid}\n />\n );\n }\n);\n\nInputNumber.displayName = \"InputNumber\";\n"],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ var _moment = _interopRequireDefault(require("moment"));
|
|
|
12
12
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
13
13
|
var _timeUtils = require("../../utils/timeUtils");
|
|
14
14
|
var _ComboBox = require("../ComboBox/ComboBox");
|
|
15
|
-
var _excluded = ["mode", "selected", "min", "max", "onChange", "step", "size", "className", "placeholder", "triggerMode", "disabled", "invalid", "
|
|
15
|
+
var _excluded = ["mode", "selected", "min", "max", "onChange", "step", "size", "className", "placeholder", "triggerMode", "disabled", "invalid", "enableVirtualization", "addCustomTimeLabel"];
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
17
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
18
18
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -32,7 +32,8 @@ var StyledInputTimeWrapper = exports.StyledInputTimeWrapper = _styledComponents.
|
|
|
32
32
|
})(["max-width:176px;flex:1;& .c-combo-box--list{min-width:176px;}"]);
|
|
33
33
|
var renderOption = function renderOption(option) {
|
|
34
34
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
35
|
-
id: option.id
|
|
35
|
+
id: option.id,
|
|
36
|
+
"data-testid": "time-option-".concat(option.id)
|
|
36
37
|
}, option.name);
|
|
37
38
|
};
|
|
38
39
|
var InputTime = exports.InputTime = function InputTime(_ref) {
|
|
@@ -52,12 +53,19 @@ var InputTime = exports.InputTime = function InputTime(_ref) {
|
|
|
52
53
|
triggerMode = _ref.triggerMode,
|
|
53
54
|
disabled = _ref.disabled,
|
|
54
55
|
invalid = _ref.invalid,
|
|
55
|
-
|
|
56
|
+
_ref$enableVirtualiza = _ref.enableVirtualization,
|
|
57
|
+
enableVirtualization = _ref$enableVirtualiza === void 0 ? false : _ref$enableVirtualiza,
|
|
58
|
+
_ref$addCustomTimeLab = _ref.addCustomTimeLabel,
|
|
59
|
+
addCustomTimeLabel = _ref$addCustomTimeLab === void 0 ? "Add" : _ref$addCustomTimeLab,
|
|
56
60
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
57
61
|
var _useState = (0, _react.useState)(false),
|
|
58
62
|
_useState2 = _slicedToArray(_useState, 2),
|
|
59
63
|
isOpen = _useState2[0],
|
|
60
64
|
setIsOpen = _useState2[1];
|
|
65
|
+
var _useState3 = (0, _react.useState)(undefined),
|
|
66
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
67
|
+
search = _useState4[0],
|
|
68
|
+
setSearch = _useState4[1];
|
|
61
69
|
var generateTimeOptions = function generateTimeOptions() {
|
|
62
70
|
var minTime = (0, _moment.default)((0, _timeUtils.isValidTime)(min) ? min : "00:00", "HH:mm");
|
|
63
71
|
var maxTime = (0, _moment.default)((0, _timeUtils.isValidTime)(max) ? max : "23:45", "HH:mm");
|
|
@@ -74,15 +82,22 @@ var InputTime = exports.InputTime = function InputTime(_ref) {
|
|
|
74
82
|
return (0, _moment.default)(option.id, "HH:mm").isSameOrAfter(minTime) && (0, _moment.default)(option.id, "HH:mm").isSameOrBefore(maxTime);
|
|
75
83
|
});
|
|
76
84
|
};
|
|
77
|
-
var
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
var
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
+
var _useState5 = (0, _react.useState)(generateTimeOptions()),
|
|
86
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
87
|
+
timeOptions = _useState6[0],
|
|
88
|
+
setTimeOptions = _useState6[1];
|
|
89
|
+
var isInOptions = (0, _react.useCallback)(function (option) {
|
|
90
|
+
return timeOptions.some(function (opt) {
|
|
91
|
+
return opt.id === option;
|
|
92
|
+
});
|
|
93
|
+
}, [timeOptions]);
|
|
94
|
+
var isValidDefaultSelected = defaultSelected ? isInOptions(defaultSelected) : false;
|
|
95
|
+
var _useState7 = (0, _react.useState)(isValidDefaultSelected ? defaultSelected : undefined),
|
|
96
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
97
|
+
selected = _useState8[0],
|
|
98
|
+
setSelected = _useState8[1];
|
|
85
99
|
var handleInputChange = (0, _react.useCallback)(function (text) {
|
|
100
|
+
setSearch(text);
|
|
86
101
|
if (/\d{1,2}:\d{2}/.test(text.trim())) {
|
|
87
102
|
return;
|
|
88
103
|
}
|
|
@@ -99,6 +114,27 @@ var InputTime = exports.InputTime = function InputTime(_ref) {
|
|
|
99
114
|
}
|
|
100
115
|
}
|
|
101
116
|
}, [onChange, selected, timeOptions]);
|
|
117
|
+
var handleEmptyAction = function handleEmptyAction(newTime) {
|
|
118
|
+
var time = String(newTime);
|
|
119
|
+
if ((0, _timeUtils.isValidTime)(time)) {
|
|
120
|
+
var newOption = {
|
|
121
|
+
id: time,
|
|
122
|
+
name: mode === "12" ? (0, _moment.default)(time, "HH:mm").format("hh:mm A") : time
|
|
123
|
+
};
|
|
124
|
+
var newOptions = [...timeOptions];
|
|
125
|
+
var index = newOptions.findIndex(function (option) {
|
|
126
|
+
return (0, _moment.default)(option.id, "HH:mm") > (0, _moment.default)(time, "HH:mm");
|
|
127
|
+
});
|
|
128
|
+
if (index === -1) {
|
|
129
|
+
newOptions.push(newOption);
|
|
130
|
+
} else {
|
|
131
|
+
newOptions.splice(index, 0, newOption);
|
|
132
|
+
}
|
|
133
|
+
setTimeOptions(newOptions);
|
|
134
|
+
onChange === null || onChange === void 0 || onChange(time);
|
|
135
|
+
setSelected(time);
|
|
136
|
+
}
|
|
137
|
+
};
|
|
102
138
|
var handleChange = function handleChange(e) {
|
|
103
139
|
setSelected(e);
|
|
104
140
|
onChange === null || onChange === void 0 || onChange(e);
|
|
@@ -125,6 +161,9 @@ var InputTime = exports.InputTime = function InputTime(_ref) {
|
|
|
125
161
|
})) setSelected(defaultSelected);
|
|
126
162
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
127
163
|
}, [defaultSelected, timeOptions]);
|
|
164
|
+
var isValid = function isValid(time) {
|
|
165
|
+
return !isInOptions(time) && (0, _timeUtils.isValidTime)(time);
|
|
166
|
+
};
|
|
128
167
|
return /*#__PURE__*/_react.default.createElement(StyledInputTimeWrapper, {
|
|
129
168
|
className: (0, _classnames.default)("c-input-time", className)
|
|
130
169
|
}, /*#__PURE__*/_react.default.createElement(_ComboBox.ComboBox, _extends({}, rest, {
|
|
@@ -135,6 +174,8 @@ var InputTime = exports.InputTime = function InputTime(_ref) {
|
|
|
135
174
|
keepSameOptionsOrder: true,
|
|
136
175
|
onInputChange: handleInputChange,
|
|
137
176
|
onChange: handleChange,
|
|
177
|
+
handleEmptyAction: handleEmptyAction,
|
|
178
|
+
emptyValue: isValid(search) ? "".concat(addCustomTimeLabel, " ").concat(search) : undefined,
|
|
138
179
|
forceCloseMenu: true,
|
|
139
180
|
placeholder: placeholder,
|
|
140
181
|
renderOption: renderOption,
|
|
@@ -145,7 +186,7 @@ var InputTime = exports.InputTime = function InputTime(_ref) {
|
|
|
145
186
|
triggerMode: triggerMode,
|
|
146
187
|
disabled: disabled,
|
|
147
188
|
invalid: invalid,
|
|
148
|
-
disableVirtualization:
|
|
189
|
+
disableVirtualization: !enableVirtualization
|
|
149
190
|
})));
|
|
150
191
|
};
|
|
151
192
|
//# sourceMappingURL=InputTime.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputTime.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_compromise","_compromiseDates","_moment","_styledComponents","_timeUtils","_ComboBox","_excluded","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","arr2","l","Symbol","iterator","f","next","done","push","value","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","nlp","plugin","plg","StyledInputTimeWrapper","exports","styled","div","withConfig","displayName","componentId","renderOption","option","createElement","id","InputTime","_ref","_ref$mode","mode","defaultSelected","selected","_ref$min","min","_ref$max","max","onChange","_ref$step","step","size","className","placeholder","triggerMode","disabled","invalid","disableVirtualization","rest","_useState","useState","_useState2","isOpen","setIsOpen","generateTimeOptions","minTime","moment","isValidTime","maxTime","allOptions","currentTime","isBefore","format","add","filter","isSameOrAfter","isSameOrBefore","timeOptions","isValidDefaultSelected","some","opt","_useState3","undefined","_useState4","setSelected","handleInputChange","useCallback","text","trim","doc","parsed","times","handleChange","handleOpen","handleClose","useEffect","_document$getElementB","selectedItem","document","getElementById","parentElement","scrollIntoView","behavior","block","classNames","ComboBox","options","open","disabledInternalSort","keepSameOptionsOrder","onInputChange","forceCloseMenu","autoHeightMax","onClose","onOpen"],"sources":["../../../../src/components/Input/InputTime.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport nlp from \"compromise\";\nimport plg, { DatesMethods } from \"compromise-dates\";\nimport moment from \"moment\";\nimport styled from \"styled-components\";\n\nimport { InputMode, InputSize } from \"./types\";\nimport { isValidTime } from \"../../utils/timeUtils\";\nimport { ComboBox } from \"../ComboBox/ComboBox\";\nimport { IOptionItemProps } from \"../Select/Option\";\nimport { Time24HourFormat } from \"../SelectTime\";\n\nnlp.plugin(plg);\n\nexport const StyledInputTimeWrapper = styled.div`\n max-width: 176px;\n flex: 1;\n\n & .c-combo-box--list {\n min-width: 176px;\n }\n`;\n\nexport interface InputTimeProps {\n mode?: \"12\" | \"24\";\n selected?: Time24HourFormat;\n min?: Time24HourFormat;\n max?: Time24HourFormat;\n onChange?: (val: Time24HourFormat) => void;\n className?: string;\n placeholder?: string;\n size?: InputSize;\n step?: 1 | 5 | 15 | 30 | 60;\n triggerMode?: InputMode;\n disabled?: boolean;\n invalid?: boolean;\n disableVirtualization?: boolean;\n}\n\nconst renderOption = (option) => {\n return <div id={option.id}>{option.name}</div>;\n};\n\nexport const InputTime: React.FC<InputTimeProps> = ({\n mode = \"24\",\n selected: defaultSelected,\n min = \"00:00\",\n max = \"23:45\",\n onChange,\n step = 15,\n size,\n className,\n placeholder,\n triggerMode,\n disabled,\n invalid,\n disableVirtualization,\n ...rest\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n\n const generateTimeOptions = (): IOptionItemProps[] => {\n const minTime = moment(isValidTime(min) ? min : \"00:00\", \"HH:mm\");\n const maxTime = moment(isValidTime(max) ? max : \"23:45\", \"HH:mm\");\n const allOptions: IOptionItemProps[] = [];\n\n const currentTime = moment(\"00:00\", \"HH:mm\");\n\n while (currentTime.isBefore(moment(\"24:00\", \"HH:mm\"))) {\n allOptions.push({\n id: currentTime.format(\"HH:mm\"),\n name: currentTime.format(mode === \"12\" ? \"hh:mm A\" : \"HH:mm\"),\n });\n currentTime.add(step, \"minutes\");\n }\n\n return allOptions.filter(\n (option) =>\n moment(option.id, \"HH:mm\").isSameOrAfter(minTime) &&\n moment(option.id, \"HH:mm\").isSameOrBefore(maxTime)\n );\n };\n\n const timeOptions = generateTimeOptions();\n\n const isValidDefaultSelected = defaultSelected\n ? timeOptions.some((opt) => opt.id === defaultSelected)\n : false;\n\n const [selected, setSelected] = useState<Time24HourFormat | undefined>(\n isValidDefaultSelected ? defaultSelected : undefined\n );\n\n const handleInputChange = useCallback(\n (text: string) => {\n if (/\\d{1,2}:\\d{2}/.test(text.trim())) {\n return;\n }\n const doc = nlp<DatesMethods>(text);\n const parsed = doc.times().get()[0];\n if (parsed && parsed[\"24h\"] && parsed[\"24h\"] !== selected) {\n const value = moment(parsed).format(\"HH:mm\") as Time24HourFormat;\n if (timeOptions.some((option) => option.id === value)) {\n setSelected(value);\n onChange?.(value);\n setIsOpen(false);\n }\n }\n },\n [onChange, selected, timeOptions]\n );\n\n const handleChange = (e) => {\n setSelected(e);\n onChange?.(e);\n };\n\n const handleOpen = () => {\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setIsOpen(false);\n };\n\n useEffect(() => {\n if (isOpen && selected) {\n const selectedItem = document.getElementById(selected)?.parentElement;\n selectedItem?.scrollIntoView({ behavior: \"smooth\", block: \"center\" });\n }\n }, [isOpen, selected]);\n\n useEffect(() => {\n if (\n defaultSelected !== selected &&\n timeOptions.some((opt) => opt.id === defaultSelected)\n )\n setSelected(defaultSelected);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [defaultSelected, timeOptions]);\n\n return (\n <StyledInputTimeWrapper className={classNames(\"c-input-time\", className)}>\n <ComboBox\n {...rest}\n options={timeOptions}\n open={isOpen}\n disabledInternalSort\n selected={selected}\n keepSameOptionsOrder\n onInputChange={handleInputChange}\n onChange={handleChange}\n forceCloseMenu\n placeholder={placeholder}\n renderOption={renderOption}\n autoHeightMax={226}\n size={size}\n onClose={handleClose}\n onOpen={handleOpen}\n triggerMode={triggerMode}\n disabled={disabled}\n invalid={invalid}\n disableVirtualization={disableVirtualization}\n />\n </StyledInputTimeWrapper>\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InputTime.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_compromise","_compromiseDates","_moment","_styledComponents","_timeUtils","_ComboBox","_excluded","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","arr2","l","Symbol","iterator","f","next","done","push","value","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","nlp","plugin","plg","StyledInputTimeWrapper","exports","styled","div","withConfig","displayName","componentId","renderOption","option","createElement","id","concat","InputTime","_ref","_ref$mode","mode","defaultSelected","selected","_ref$min","min","_ref$max","max","onChange","_ref$step","step","size","className","placeholder","triggerMode","disabled","invalid","_ref$enableVirtualiza","enableVirtualization","_ref$addCustomTimeLab","addCustomTimeLabel","rest","_useState","useState","_useState2","isOpen","setIsOpen","_useState3","undefined","_useState4","search","setSearch","generateTimeOptions","minTime","moment","isValidTime","maxTime","allOptions","currentTime","isBefore","format","add","filter","isSameOrAfter","isSameOrBefore","_useState5","_useState6","timeOptions","setTimeOptions","isInOptions","useCallback","some","opt","isValidDefaultSelected","_useState7","_useState8","setSelected","handleInputChange","text","trim","doc","parsed","times","handleEmptyAction","newTime","time","String","newOption","newOptions","index","findIndex","splice","handleChange","handleOpen","handleClose","useEffect","_document$getElementB","selectedItem","document","getElementById","parentElement","scrollIntoView","behavior","block","isValid","classNames","ComboBox","options","open","disabledInternalSort","keepSameOptionsOrder","onInputChange","emptyValue","forceCloseMenu","autoHeightMax","onClose","onOpen","disableVirtualization"],"sources":["../../../../src/components/Input/InputTime.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport nlp from \"compromise\";\nimport plg, { DatesMethods } from \"compromise-dates\";\nimport moment from \"moment\";\nimport styled from \"styled-components\";\n\nimport { InputMode, InputSize } from \"./types\";\nimport { isValidTime } from \"../../utils/timeUtils\";\nimport { ComboBox } from \"../ComboBox/ComboBox\";\nimport { IOptionItemProps } from \"../Select/Option\";\nimport { Time24HourFormat } from \"../SelectTime\";\n\nnlp.plugin(plg);\n\nexport const StyledInputTimeWrapper = styled.div`\n max-width: 176px;\n flex: 1;\n\n & .c-combo-box--list {\n min-width: 176px;\n }\n`;\n\nexport interface InputTimeProps {\n mode?: \"12\" | \"24\";\n selected?: Time24HourFormat;\n min?: Time24HourFormat;\n max?: Time24HourFormat;\n onChange?: (val: Time24HourFormat) => void;\n className?: string;\n placeholder?: string;\n size?: InputSize;\n step?: 1 | 5 | 15 | 30 | 60;\n triggerMode?: InputMode;\n disabled?: boolean;\n invalid?: boolean;\n enableVirtualization?: boolean;\n addCustomTimeLabel?: string;\n}\n\nconst renderOption = (option) => {\n return (\n <div id={option.id} data-testid={`time-option-${option.id}`}>\n {option.name}\n </div>\n );\n};\n\nexport const InputTime: React.FC<InputTimeProps> = ({\n mode = \"24\",\n selected: defaultSelected,\n min = \"00:00\",\n max = \"23:45\",\n onChange,\n step = 15,\n size,\n className,\n placeholder,\n triggerMode,\n disabled,\n invalid,\n enableVirtualization = false,\n addCustomTimeLabel = \"Add\",\n ...rest\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n const [search, setSearch] = useState<string | undefined>(undefined);\n\n const generateTimeOptions = (): IOptionItemProps[] => {\n const minTime = moment(isValidTime(min) ? min : \"00:00\", \"HH:mm\");\n const maxTime = moment(isValidTime(max) ? max : \"23:45\", \"HH:mm\");\n const allOptions: IOptionItemProps[] = [];\n\n const currentTime = moment(\"00:00\", \"HH:mm\");\n\n while (currentTime.isBefore(moment(\"24:00\", \"HH:mm\"))) {\n allOptions.push({\n id: currentTime.format(\"HH:mm\"),\n name: currentTime.format(mode === \"12\" ? \"hh:mm A\" : \"HH:mm\"),\n });\n currentTime.add(step, \"minutes\");\n }\n\n return allOptions.filter(\n (option) =>\n moment(option.id, \"HH:mm\").isSameOrAfter(minTime) &&\n moment(option.id, \"HH:mm\").isSameOrBefore(maxTime)\n );\n };\n\n const [timeOptions, setTimeOptions] = useState(generateTimeOptions());\n\n const isInOptions = useCallback(\n (option) => timeOptions.some((opt) => opt.id === option),\n [timeOptions]\n );\n\n const isValidDefaultSelected = defaultSelected\n ? isInOptions(defaultSelected)\n : false;\n\n const [selected, setSelected] = useState<Time24HourFormat | undefined>(\n isValidDefaultSelected ? defaultSelected : undefined\n );\n\n const handleInputChange = useCallback(\n (text: string) => {\n setSearch(text);\n if (/\\d{1,2}:\\d{2}/.test(text.trim())) {\n return;\n }\n const doc = nlp<DatesMethods>(text);\n const parsed = doc.times().get()[0];\n if (parsed && parsed[\"24h\"] && parsed[\"24h\"] !== selected) {\n const value = moment(parsed).format(\"HH:mm\") as Time24HourFormat;\n if (timeOptions.some((option) => option.id === value)) {\n setSelected(value);\n onChange?.(value);\n setIsOpen(false);\n }\n }\n },\n [onChange, selected, timeOptions]\n );\n\n const handleEmptyAction = (newTime: string | number) => {\n const time = String(newTime);\n if (isValidTime(time)) {\n const newOption = {\n id: time,\n name: mode === \"12\" ? moment(time, \"HH:mm\").format(\"hh:mm A\") : time,\n };\n\n const newOptions = [...timeOptions];\n const index = newOptions.findIndex(\n (option) => moment(option.id, \"HH:mm\") > moment(time, \"HH:mm\")\n );\n\n if (index === -1) {\n newOptions.push(newOption);\n } else {\n newOptions.splice(index, 0, newOption);\n }\n\n setTimeOptions(newOptions);\n onChange?.(time as Time24HourFormat);\n setSelected(time as Time24HourFormat);\n }\n };\n\n const handleChange = (e) => {\n setSelected(e);\n onChange?.(e);\n };\n\n const handleOpen = () => {\n setIsOpen(true);\n };\n\n const handleClose = () => {\n setIsOpen(false);\n };\n\n useEffect(() => {\n if (isOpen && selected) {\n const selectedItem = document.getElementById(selected)?.parentElement;\n selectedItem?.scrollIntoView({ behavior: \"smooth\", block: \"center\" });\n }\n }, [isOpen, selected]);\n\n useEffect(() => {\n if (\n defaultSelected !== selected &&\n timeOptions.some((opt) => opt.id === defaultSelected)\n )\n setSelected(defaultSelected);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [defaultSelected, timeOptions]);\n\n const isValid = (time?: string) => !isInOptions(time) && isValidTime(time);\n\n return (\n <StyledInputTimeWrapper className={classNames(\"c-input-time\", className)}>\n <ComboBox\n {...rest}\n options={timeOptions}\n open={isOpen}\n disabledInternalSort\n selected={selected}\n keepSameOptionsOrder\n onInputChange={handleInputChange}\n onChange={handleChange}\n handleEmptyAction={handleEmptyAction}\n emptyValue={\n isValid(search) ? `${addCustomTimeLabel} ${search}` : undefined\n }\n forceCloseMenu\n placeholder={placeholder}\n renderOption={renderOption}\n autoHeightMax={226}\n size={size}\n onClose={handleClose}\n onOpen={handleOpen}\n triggerMode={triggerMode}\n disabled={disabled}\n invalid={invalid}\n disableVirtualization={!enableVirtualization}\n />\n </StyledInputTimeWrapper>\n );\n};\n"],"mappings":"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"}
|
|
@@ -22,7 +22,7 @@ var useInputNumber = exports.useInputNumber = function useInputNumber(_ref, inpu
|
|
|
22
22
|
disableMacros = _ref.disableMacros,
|
|
23
23
|
decimalLength = _ref.decimalLength,
|
|
24
24
|
_ref$value = _ref.value,
|
|
25
|
-
value = _ref$value === void 0 ?
|
|
25
|
+
value = _ref$value === void 0 ? undefined : _ref$value,
|
|
26
26
|
onChange = _ref.onChange,
|
|
27
27
|
onSave = _ref.onSave,
|
|
28
28
|
onEnterKeyPress = _ref.onEnterKeyPress,
|
|
@@ -47,39 +47,53 @@ var useInputNumber = exports.useInputNumber = function useInputNumber(_ref, inpu
|
|
|
47
47
|
console.warn("Warning: The maximum value is set to be lower than the minimum value. The maximum value will be ignored.");
|
|
48
48
|
}
|
|
49
49
|
var _useState = (0, _react.useState)(function () {
|
|
50
|
-
return
|
|
50
|
+
return value;
|
|
51
51
|
}),
|
|
52
52
|
_useState2 = _slicedToArray(_useState, 2),
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
numericValue = _useState2[0],
|
|
54
|
+
setNumericValue = _useState2[1];
|
|
55
55
|
var _useState3 = (0, _react.useState)(function () {
|
|
56
|
-
return
|
|
56
|
+
return value;
|
|
57
57
|
}),
|
|
58
58
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
59
|
-
|
|
60
|
-
|
|
59
|
+
prevNumericValue = _useState4[0],
|
|
60
|
+
setPrevNumericValue = _useState4[1];
|
|
61
61
|
var _useState5 = (0, _react.useState)(function () {
|
|
62
|
-
return (0, _currencyUtils.formatNumber)(value,
|
|
62
|
+
return (0, _currencyUtils.formatNumber)(value, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short", shortenThreshold);
|
|
63
63
|
}),
|
|
64
64
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
65
|
-
|
|
66
|
-
|
|
65
|
+
currentValue = _useState6[0],
|
|
66
|
+
setCurrentValue = _useState6[1];
|
|
67
67
|
var _useState7 = (0, _react.useState)(function () {
|
|
68
|
-
return (0, _currencyUtils.formatNumber)(value,
|
|
68
|
+
return (0, _currencyUtils.formatNumber)(value, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short", shortenThreshold);
|
|
69
69
|
}),
|
|
70
70
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
var _useState9 = (0, _react.useState)(
|
|
71
|
+
prevValue = _useState8[0],
|
|
72
|
+
setPrevValue = _useState8[1];
|
|
73
|
+
var _useState9 = (0, _react.useState)(function () {
|
|
74
|
+
return (0, _currencyUtils.formatNumber)(value, "", decimalSeparator, false, decimalLength, "long", shortenThreshold);
|
|
75
|
+
}),
|
|
74
76
|
_useState10 = _slicedToArray(_useState9, 2),
|
|
75
|
-
|
|
76
|
-
|
|
77
|
+
unformattedValue = _useState10[0],
|
|
78
|
+
setUnformattedValue = _useState10[1];
|
|
79
|
+
var _useState11 = (0, _react.useState)(function () {
|
|
80
|
+
return (0, _currencyUtils.formatNumber)(value, "", decimalSeparator, false, decimalLength, "long", shortenThreshold);
|
|
81
|
+
}),
|
|
82
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
83
|
+
unformattedPrevValue = _useState12[0],
|
|
84
|
+
setUnformattedPrevValue = _useState12[1];
|
|
85
|
+
var _useState13 = (0, _react.useState)(false),
|
|
86
|
+
_useState14 = _slicedToArray(_useState13, 2),
|
|
87
|
+
focused = _useState14[0],
|
|
88
|
+
setFocused = _useState14[1];
|
|
77
89
|
(0, _react.useEffect)(function () {
|
|
78
|
-
if (value !==
|
|
90
|
+
if (value !== prevNumericValue && (!focused || update)) {
|
|
79
91
|
setCurrentValue((0, _currencyUtils.formatNumber)(value, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short", shortenThreshold));
|
|
80
92
|
setPrevValue((0, _currencyUtils.formatNumber)(value, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short", shortenThreshold));
|
|
81
93
|
setUnformattedValue((0, _currencyUtils.formatNumber)(value, "", decimalSeparator, false, decimalLength, "long", shortenThreshold));
|
|
82
94
|
setUnformattedPrevValue((0, _currencyUtils.formatNumber)(value, "", decimalSeparator, false, decimalLength, "long", shortenThreshold));
|
|
95
|
+
setNumericValue(value);
|
|
96
|
+
setPrevNumericValue(value);
|
|
83
97
|
}
|
|
84
98
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
85
99
|
}, [disableAbbreviation, thousandSeparator, decimalSeparator, decimalLength, trimDecimals, value, focused]);
|
|
@@ -88,23 +102,31 @@ var useInputNumber = exports.useInputNumber = function useInputNumber(_ref, inpu
|
|
|
88
102
|
if (escapeRef.current) {
|
|
89
103
|
setCurrentValue(prevValue);
|
|
90
104
|
setUnformattedValue(unformattedPrevValue);
|
|
91
|
-
|
|
105
|
+
setNumericValue(prevNumericValue);
|
|
106
|
+
if (onChange) onChange(prevNumericValue);
|
|
92
107
|
} else {
|
|
93
108
|
if (e.target.value.trim().length > 0 && prevValue !== e.target.value) {
|
|
94
109
|
var _value = (0, _currencyUtils.formatNumber)(currentValue, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short", shortenThreshold);
|
|
110
|
+
var _unformatedValue = (0, _currencyUtils.formatNumber)(currentValue, "", decimalSeparator, false, decimalLength, "long", shortenThreshold);
|
|
111
|
+
var _numericValue = (0, _currencyUtils.getNumberFromString)(_unformatedValue, thousandSeparator, decimalSeparator);
|
|
95
112
|
setPrevValue(_value);
|
|
96
|
-
setUnformattedPrevValue(
|
|
97
|
-
setUnformattedValue(
|
|
113
|
+
setUnformattedPrevValue(_unformatedValue);
|
|
114
|
+
setUnformattedValue(_unformatedValue);
|
|
115
|
+
setNumericValue(_numericValue);
|
|
116
|
+
setPrevNumericValue(_numericValue);
|
|
117
|
+
if (_numericValue !== prevNumericValue) onChange === null || onChange === void 0 || onChange(_numericValue);
|
|
98
118
|
setCurrentValue(_value);
|
|
99
119
|
typeof onSave === "function" && onSave(e);
|
|
100
120
|
} else {
|
|
101
121
|
if (!allowEmptyValue) {
|
|
102
122
|
setCurrentValue(prevValue);
|
|
103
123
|
setUnformattedValue(unformattedPrevValue);
|
|
124
|
+
setNumericValue(prevNumericValue);
|
|
125
|
+
onChange === null || onChange === void 0 || onChange(prevNumericValue);
|
|
104
126
|
typeof onCancel === "function" && onCancel(e);
|
|
105
127
|
} else {
|
|
106
|
-
if (
|
|
107
|
-
onSave(e);
|
|
128
|
+
if (prevValue !== e.target.value) {
|
|
129
|
+
onSave === null || onSave === void 0 || onSave(e);
|
|
108
130
|
} else {
|
|
109
131
|
typeof onCancel === "function" && onCancel(e);
|
|
110
132
|
}
|
|
@@ -113,52 +135,51 @@ var useInputNumber = exports.useInputNumber = function useInputNumber(_ref, inpu
|
|
|
113
135
|
}
|
|
114
136
|
setFocused(false);
|
|
115
137
|
typeof onBlur === "function" && onBlur(e);
|
|
116
|
-
}, [onBlur, prevValue, unformattedPrevValue,
|
|
138
|
+
}, [currentValue, onBlur, prevValue, unformattedPrevValue, prevNumericValue, onChange, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation, shortenThreshold, onSave, allowEmptyValue, onCancel]);
|
|
117
139
|
var updateValue = (0, _react.useCallback)(function (type) {
|
|
118
|
-
|
|
119
|
-
var numericValue = parseFloat(preformattedValue);
|
|
120
|
-
if (isNaN(numericValue)) return;
|
|
121
|
-
if (max !== undefined && numericValue > Number(max) || min !== undefined && numericValue < Number(min)) {
|
|
140
|
+
if (max !== undefined && Number(numericValue) > max || min !== undefined && Number(numericValue) < min) {
|
|
122
141
|
return;
|
|
123
142
|
}
|
|
124
143
|
var newValue = numericValue;
|
|
125
144
|
if (type === "increment") {
|
|
126
|
-
if (max === undefined || numericValue + step <=
|
|
127
|
-
newValue = numericValue + step;
|
|
128
|
-
} else if (numericValue <
|
|
129
|
-
newValue =
|
|
145
|
+
if (max === undefined || Number(numericValue) + step <= max) {
|
|
146
|
+
newValue = Number(numericValue) + step;
|
|
147
|
+
} else if (Number(numericValue) < max) {
|
|
148
|
+
newValue = max;
|
|
130
149
|
} else {
|
|
131
150
|
return;
|
|
132
151
|
}
|
|
133
152
|
} else if (type === "decrement") {
|
|
134
|
-
if (min === undefined || numericValue - step >=
|
|
135
|
-
newValue = numericValue - step;
|
|
136
|
-
} else if (numericValue >
|
|
137
|
-
newValue =
|
|
153
|
+
if (min === undefined || Number(numericValue) - step >= min) {
|
|
154
|
+
newValue = Number(numericValue) - step;
|
|
155
|
+
} else if (Number(numericValue) > min) {
|
|
156
|
+
newValue = min;
|
|
138
157
|
} else {
|
|
139
158
|
return;
|
|
140
159
|
}
|
|
141
160
|
}
|
|
142
161
|
var formattedValue;
|
|
143
162
|
if (decimalLength !== undefined) {
|
|
144
|
-
formattedValue = newValue.toFixed(decimalLength);
|
|
163
|
+
formattedValue = Number(newValue).toFixed(decimalLength);
|
|
145
164
|
} else {
|
|
146
|
-
formattedValue = newValue.toFixed(2);
|
|
165
|
+
formattedValue = Number(newValue).toFixed(2);
|
|
147
166
|
}
|
|
148
167
|
if (decimalLength !== undefined && decimalLength === 0) {
|
|
149
|
-
formattedValue = Math.round(newValue).toString();
|
|
168
|
+
formattedValue = Math.round(Number(newValue)).toString();
|
|
150
169
|
}
|
|
151
170
|
if (formattedValue.includes(".") || formattedValue.includes(",")) {
|
|
152
171
|
formattedValue = formattedValue.replace(".", decimalSeparator);
|
|
153
172
|
}
|
|
173
|
+
setNumericValue(newValue);
|
|
174
|
+
setPrevNumericValue(newValue);
|
|
154
175
|
setUnformattedValue(formattedValue);
|
|
155
176
|
setCurrentValue(formattedValue);
|
|
156
|
-
if (onChange) onChange(
|
|
157
|
-
}, [
|
|
177
|
+
if (onChange) onChange(newValue);
|
|
178
|
+
}, [max, numericValue, min, decimalLength, onChange, step, decimalSeparator]);
|
|
158
179
|
var handleKeyDown = (0, _react.useCallback)(function (e) {
|
|
159
180
|
if (e.key === "Enter") {
|
|
160
181
|
e.target.blur();
|
|
161
|
-
if (typeof onEnterKeyPress === "function") onEnterKeyPress(
|
|
182
|
+
if (typeof onEnterKeyPress === "function") onEnterKeyPress(numericValue);
|
|
162
183
|
}
|
|
163
184
|
if (e.key === "ArrowLeft") {
|
|
164
185
|
return;
|
|
@@ -219,25 +240,35 @@ var useInputNumber = exports.useInputNumber = function useInputNumber(_ref, inpu
|
|
|
219
240
|
e.preventDefault();
|
|
220
241
|
return;
|
|
221
242
|
}
|
|
222
|
-
}, [decimalLength, decimalSeparator, disableMacros, inputRef, limit, min, onCancel, onEnterKeyPress, updateValue, validation]);
|
|
243
|
+
}, [decimalLength, decimalSeparator, disableMacros, inputRef, limit, min, numericValue, onCancel, onEnterKeyPress, updateValue, validation]);
|
|
223
244
|
var handleChange = (0, _react.useCallback)(function (e) {
|
|
224
245
|
var inputValue = e.target.value;
|
|
246
|
+
var numericNewValue = undefined;
|
|
225
247
|
var numericInput = disableMacros ? inputValue : inputValue.replace(/(\d+(?:[.,]\d+)?)([kmbtKMBT])/, function (_, num, unit) {
|
|
226
248
|
var normalizedNum = num.replace(",", ".");
|
|
227
249
|
var parts = normalizedNum.split(".");
|
|
228
250
|
var integerPart = parts[0];
|
|
229
251
|
var fractionalPart = parts[1];
|
|
230
252
|
var newInteger = parseInt(integerPart, 10) * _currencyUtils.currencyMultiplier[unit.toLowerCase()];
|
|
253
|
+
numericNewValue = parseFloat("".concat(newInteger ? newInteger : 0, ".").concat(fractionalPart ? fractionalPart : 0));
|
|
231
254
|
var result = newInteger.toString();
|
|
232
255
|
if (fractionalPart !== undefined) {
|
|
233
256
|
result += decimalSeparator + fractionalPart;
|
|
234
257
|
}
|
|
235
258
|
return result;
|
|
236
259
|
});
|
|
260
|
+
if (numericNewValue === undefined) {
|
|
261
|
+
if (inputValue) {
|
|
262
|
+
numericNewValue = parseFloat(inputValue.replace(",", "."));
|
|
263
|
+
} else {
|
|
264
|
+
numericNewValue = undefined;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
237
267
|
setCurrentValue(numericInput);
|
|
238
268
|
setUnformattedValue(numericInput);
|
|
239
|
-
|
|
240
|
-
|
|
269
|
+
setNumericValue(numericNewValue);
|
|
270
|
+
if (onChange && numericNewValue !== numericValue) onChange(numericNewValue);
|
|
271
|
+
}, [disableMacros, onChange, numericValue, decimalSeparator]);
|
|
241
272
|
var handleClick = (0, _react.useCallback)(function (e) {
|
|
242
273
|
if (typeof onClick === "function") {
|
|
243
274
|
onClick(e);
|
|
@@ -262,7 +293,8 @@ var useInputNumber = exports.useInputNumber = function useInputNumber(_ref, inpu
|
|
|
262
293
|
onDoubleClick: handleDoubleClick,
|
|
263
294
|
onFocus: handleFocus,
|
|
264
295
|
focused,
|
|
265
|
-
unformattedValue
|
|
296
|
+
unformattedValue,
|
|
297
|
+
numericValue
|
|
266
298
|
};
|
|
267
299
|
};
|
|
268
300
|
//# sourceMappingURL=useInputNumber.js.map
|