@activecollab/components 2.0.204 → 2.0.206
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/EditableCurrency/EditableCurrency.js +2 -1
- package/dist/cjs/components/EditableCurrency/EditableCurrency.js.map +1 -1
- package/dist/cjs/components/Input/InputCurrency.js +1 -0
- package/dist/cjs/components/Input/InputCurrency.js.map +1 -1
- package/dist/cjs/components/Input/InputNumber.js +5 -2
- package/dist/cjs/components/Input/InputNumber.js.map +1 -1
- package/dist/cjs/components/ProgressBar/ProgressBar.js +5 -2
- package/dist/cjs/components/ProgressBar/ProgressBar.js.map +1 -1
- package/dist/cjs/hooks/useInputNumber.js +15 -13
- package/dist/cjs/hooks/useInputNumber.js.map +1 -1
- package/dist/cjs/utils/currencyUtils.js +6 -2
- package/dist/cjs/utils/currencyUtils.js.map +1 -1
- package/dist/cjs/utils/currencyUtils.test.js +12 -3
- package/dist/cjs/utils/currencyUtils.test.js.map +1 -1
- package/dist/cjs/utils/types.js.map +1 -1
- package/dist/esm/components/EditableCurrency/EditableCurrency.d.ts.map +1 -1
- package/dist/esm/components/EditableCurrency/EditableCurrency.js +2 -1
- package/dist/esm/components/EditableCurrency/EditableCurrency.js.map +1 -1
- package/dist/esm/components/Input/InputCurrency.d.ts.map +1 -1
- package/dist/esm/components/Input/InputCurrency.js +1 -0
- package/dist/esm/components/Input/InputCurrency.js.map +1 -1
- package/dist/esm/components/Input/InputNumber.d.ts +1 -0
- package/dist/esm/components/Input/InputNumber.d.ts.map +1 -1
- package/dist/esm/components/Input/InputNumber.js +3 -1
- package/dist/esm/components/Input/InputNumber.js.map +1 -1
- package/dist/esm/components/ProgressBar/ProgressBar.d.ts +1 -0
- package/dist/esm/components/ProgressBar/ProgressBar.d.ts.map +1 -1
- package/dist/esm/components/ProgressBar/ProgressBar.js +4 -2
- package/dist/esm/components/ProgressBar/ProgressBar.js.map +1 -1
- package/dist/esm/hooks/useInputNumber.d.ts +2 -1
- package/dist/esm/hooks/useInputNumber.d.ts.map +1 -1
- package/dist/esm/hooks/useInputNumber.js +14 -13
- package/dist/esm/hooks/useInputNumber.js.map +1 -1
- package/dist/esm/utils/currencyUtils.d.ts +3 -1
- package/dist/esm/utils/currencyUtils.d.ts.map +1 -1
- package/dist/esm/utils/currencyUtils.js +9 -3
- package/dist/esm/utils/currencyUtils.js.map +1 -1
- package/dist/esm/utils/currencyUtils.test.js +12 -3
- package/dist/esm/utils/currencyUtils.test.js.map +1 -1
- package/dist/esm/utils/types.d.ts +1 -0
- package/dist/esm/utils/types.d.ts.map +1 -1
- package/dist/esm/utils/types.js.map +1 -1
- package/dist/index.js +32 -20
- 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
package/dist/index.js
CHANGED
|
@@ -642,6 +642,8 @@
|
|
|
642
642
|
* @param {boolean} [trimDecimals=true] - Whether to trim decimals to the specified number of decimal spaces.
|
|
643
643
|
* @param {number} [decimalSpaces=2] - The number of decimal spaces to keep in the formatted output.
|
|
644
644
|
* @param {"long" | "short"} [format="long"] - The format type, either "long" for full numbers or "short" for shortened numbers with suffixes.
|
|
645
|
+
* @param {number} [shortenThreshold=1000] - The minimum numeric value at which the number should be shortened
|
|
646
|
+
* using suffixes. Numbers below this threshold will always be shown in long format.
|
|
645
647
|
*
|
|
646
648
|
* @returns {string} - The formatted number as a string with separators and potentially with decimals.
|
|
647
649
|
*
|
|
@@ -655,6 +657,7 @@
|
|
|
655
657
|
var trimDecimals = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
|
|
656
658
|
var decimalSpaces = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 2;
|
|
657
659
|
var format = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : "long";
|
|
660
|
+
var shortenThreshold = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : 1000;
|
|
658
661
|
var number = getNumberFromString(n, thousandSeparator, decimalSeperator);
|
|
659
662
|
if (isNaN(number)) {
|
|
660
663
|
return "";
|
|
@@ -663,7 +666,8 @@
|
|
|
663
666
|
var absoluteNumber = Math.abs(number);
|
|
664
667
|
var suffixes = ["", "K", "M", "B", "T"];
|
|
665
668
|
var scale = 0;
|
|
666
|
-
|
|
669
|
+
var shouldShorten = absoluteNumber >= shortenThreshold && format === "short";
|
|
670
|
+
while (shouldShorten && scale < suffixes.length - 1 && absoluteNumber >= 1000) {
|
|
667
671
|
absoluteNumber /= 1000;
|
|
668
672
|
scale++;
|
|
669
673
|
}
|
|
@@ -717,7 +721,7 @@
|
|
|
717
721
|
var format = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : "long";
|
|
718
722
|
var currencyCode = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : "";
|
|
719
723
|
var currencyCodePosition = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : "right";
|
|
720
|
-
var formattedNum = formatNumber(n, thousandSeparator, decimalSeperator, trimDecimals, decimalSpaces, format);
|
|
724
|
+
var formattedNum = formatNumber(n, thousandSeparator, decimalSeperator, trimDecimals, decimalSpaces, format, 10000);
|
|
721
725
|
if (!currencyCode) {
|
|
722
726
|
return formattedNum;
|
|
723
727
|
}
|
|
@@ -14672,31 +14676,33 @@
|
|
|
14672
14676
|
min = _ref.min,
|
|
14673
14677
|
max = _ref.max,
|
|
14674
14678
|
onBlur = _ref.onBlur,
|
|
14675
|
-
update = _ref.update
|
|
14679
|
+
update = _ref.update,
|
|
14680
|
+
_ref$shortenThreshold = _ref.shortenThreshold,
|
|
14681
|
+
shortenThreshold = _ref$shortenThreshold === void 0 ? 1000 : _ref$shortenThreshold;
|
|
14676
14682
|
var isMaxValid = max === undefined || min === undefined || Number(max) >= Number(min);
|
|
14677
14683
|
if (!isMaxValid) {
|
|
14678
14684
|
console.warn("Warning: The maximum value is set to be lower than the minimum value. The maximum value will be ignored.");
|
|
14679
14685
|
}
|
|
14680
14686
|
var _useState = React.useState(function () {
|
|
14681
|
-
return formatNumber(value, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short");
|
|
14687
|
+
return formatNumber(value, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short", shortenThreshold);
|
|
14682
14688
|
}),
|
|
14683
14689
|
_useState2 = _slicedToArray(_useState, 2),
|
|
14684
14690
|
currentValue = _useState2[0],
|
|
14685
14691
|
setCurrentValue = _useState2[1];
|
|
14686
14692
|
var _useState3 = React.useState(function () {
|
|
14687
|
-
return formatNumber(value, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short");
|
|
14693
|
+
return formatNumber(value, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short", shortenThreshold);
|
|
14688
14694
|
}),
|
|
14689
14695
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
14690
14696
|
prevValue = _useState4[0],
|
|
14691
14697
|
setPrevValue = _useState4[1];
|
|
14692
14698
|
var _useState5 = React.useState(function () {
|
|
14693
|
-
return formatNumber(value, "", decimalSeparator, false, decimalLength, "long");
|
|
14699
|
+
return formatNumber(value, "", decimalSeparator, false, decimalLength, "long", shortenThreshold);
|
|
14694
14700
|
}),
|
|
14695
14701
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
14696
14702
|
unformattedValue = _useState6[0],
|
|
14697
14703
|
setUnformattedValue = _useState6[1];
|
|
14698
14704
|
var _useState7 = React.useState(function () {
|
|
14699
|
-
return formatNumber(value, "", decimalSeparator, false, decimalLength, "long");
|
|
14705
|
+
return formatNumber(value, "", decimalSeparator, false, decimalLength, "long", shortenThreshold);
|
|
14700
14706
|
}),
|
|
14701
14707
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
14702
14708
|
unformattedPrevValue = _useState8[0],
|
|
@@ -14707,10 +14713,10 @@
|
|
|
14707
14713
|
setFocused = _useState10[1];
|
|
14708
14714
|
React.useEffect(function () {
|
|
14709
14715
|
if (value !== prevValue && (!focused || update)) {
|
|
14710
|
-
setCurrentValue(formatNumber(value, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short"));
|
|
14711
|
-
setPrevValue(formatNumber(value, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short"));
|
|
14712
|
-
setUnformattedValue(formatNumber(value, "", decimalSeparator, false, decimalLength, "long"));
|
|
14713
|
-
setUnformattedPrevValue(formatNumber(value, "", decimalSeparator, false, decimalLength, "long"));
|
|
14716
|
+
setCurrentValue(formatNumber(value, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short", shortenThreshold));
|
|
14717
|
+
setPrevValue(formatNumber(value, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short", shortenThreshold));
|
|
14718
|
+
setUnformattedValue(formatNumber(value, "", decimalSeparator, false, decimalLength, "long", shortenThreshold));
|
|
14719
|
+
setUnformattedPrevValue(formatNumber(value, "", decimalSeparator, false, decimalLength, "long", shortenThreshold));
|
|
14714
14720
|
}
|
|
14715
14721
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
14716
14722
|
}, [disableAbbreviation, thousandSeparator, decimalSeparator, decimalLength, trimDecimals, value, focused]);
|
|
@@ -14722,10 +14728,10 @@
|
|
|
14722
14728
|
if (onChange) onChange(String(unformattedPrevValue));
|
|
14723
14729
|
} else {
|
|
14724
14730
|
if (e.target.value.trim().length > 0 && prevValue !== e.target.value) {
|
|
14725
|
-
var _value = formatNumber(currentValue, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short");
|
|
14731
|
+
var _value = formatNumber(currentValue, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation ? "long" : "short", shortenThreshold);
|
|
14726
14732
|
setPrevValue(_value);
|
|
14727
|
-
setUnformattedPrevValue(formatNumber(currentValue, "", decimalSeparator, false, decimalLength, "long"));
|
|
14728
|
-
setUnformattedValue(formatNumber(currentValue, "", decimalSeparator, false, decimalLength, "long"));
|
|
14733
|
+
setUnformattedPrevValue(formatNumber(currentValue, "", decimalSeparator, false, decimalLength, "long", shortenThreshold));
|
|
14734
|
+
setUnformattedValue(formatNumber(currentValue, "", decimalSeparator, false, decimalLength, "long", shortenThreshold));
|
|
14729
14735
|
setCurrentValue(_value);
|
|
14730
14736
|
typeof onSave === "function" && onSave(e);
|
|
14731
14737
|
} else {
|
|
@@ -14744,7 +14750,7 @@
|
|
|
14744
14750
|
}
|
|
14745
14751
|
setFocused(false);
|
|
14746
14752
|
typeof onBlur === "function" && onBlur(e);
|
|
14747
|
-
}, [onBlur, prevValue, unformattedPrevValue, onChange, currentValue, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation, onSave, allowEmptyValue, onCancel]);
|
|
14753
|
+
}, [onBlur, prevValue, unformattedPrevValue, onChange, currentValue, thousandSeparator, decimalSeparator, trimDecimals, decimalLength, disableAbbreviation, shortenThreshold, onSave, allowEmptyValue, onCancel]);
|
|
14748
14754
|
var updateValue = React.useCallback(function (type) {
|
|
14749
14755
|
var preformattedValue = String(unformattedValue).replace(thousandSeparator, "").replace(decimalSeparator, ".");
|
|
14750
14756
|
var numericValue = parseFloat(preformattedValue);
|
|
@@ -16210,7 +16216,7 @@
|
|
|
16210
16216
|
});
|
|
16211
16217
|
InputHours.displayName = "InputHours";
|
|
16212
16218
|
|
|
16213
|
-
var _excluded$J = ["decimalLength", "decimalSeparator", "disableAbbreviation", "disabled", "disableMacros", "invalid", "step", "thousandSeparator", "value", "onCancel", "onSave", "onEnterKeyPress", "allowEmptyValue", "onChange", "onClick", "limit", "placeholder", "trimDecimals", "min", "max", "onBlur", "update"];
|
|
16219
|
+
var _excluded$J = ["decimalLength", "decimalSeparator", "disableAbbreviation", "disabled", "disableMacros", "invalid", "step", "thousandSeparator", "value", "onCancel", "onSave", "onEnterKeyPress", "allowEmptyValue", "onChange", "onClick", "limit", "placeholder", "trimDecimals", "min", "max", "onBlur", "update", "shortenThreshold"];
|
|
16214
16220
|
var InputNumber = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
16215
16221
|
var _ref$decimalLength = _ref.decimalLength,
|
|
16216
16222
|
decimalLength = _ref$decimalLength === void 0 ? 2 : _ref$decimalLength,
|
|
@@ -16242,6 +16248,8 @@
|
|
|
16242
16248
|
externalOnBlur = _ref.onBlur,
|
|
16243
16249
|
_ref$update = _ref.update,
|
|
16244
16250
|
update = _ref$update === void 0 ? false : _ref$update,
|
|
16251
|
+
_ref$shortenThreshold = _ref.shortenThreshold,
|
|
16252
|
+
shortenThreshold = _ref$shortenThreshold === void 0 ? 1000 : _ref$shortenThreshold,
|
|
16245
16253
|
rest = _objectWithoutProperties(_ref, _excluded$J);
|
|
16246
16254
|
var inputRef = React.useRef(null);
|
|
16247
16255
|
var handleRef = useForkRef(ref, inputRef);
|
|
@@ -16264,7 +16272,8 @@
|
|
|
16264
16272
|
min,
|
|
16265
16273
|
max,
|
|
16266
16274
|
onBlur: externalOnBlur,
|
|
16267
|
-
update
|
|
16275
|
+
update,
|
|
16276
|
+
shortenThreshold
|
|
16268
16277
|
}, inputRef),
|
|
16269
16278
|
value = _useInputNumber.value,
|
|
16270
16279
|
onBlur = _useInputNumber.onBlur,
|
|
@@ -16318,6 +16327,7 @@
|
|
|
16318
16327
|
align: "right",
|
|
16319
16328
|
ref: ref,
|
|
16320
16329
|
disabled: disabled,
|
|
16330
|
+
shortenThreshold: 10000,
|
|
16321
16331
|
endAdornment: endAdornment && /*#__PURE__*/React__default["default"].createElement(InputAdornment, {
|
|
16322
16332
|
disablePointerEvents: disabled
|
|
16323
16333
|
}, endAdornment)
|
|
@@ -19859,7 +19869,8 @@
|
|
|
19859
19869
|
_ref$stroke = _ref.stroke,
|
|
19860
19870
|
stroke = _ref$stroke === void 0 ? 3 : _ref$stroke,
|
|
19861
19871
|
_ref$width = _ref.width,
|
|
19862
|
-
width = _ref$width === void 0 ? 100 : _ref$width
|
|
19872
|
+
width = _ref$width === void 0 ? 100 : _ref$width,
|
|
19873
|
+
className = _ref.className;
|
|
19863
19874
|
var progressNumber = React.useMemo(function () {
|
|
19864
19875
|
var width = progress;
|
|
19865
19876
|
if (progress > 100) {
|
|
@@ -19888,7 +19899,7 @@
|
|
|
19888
19899
|
return stroke_min;
|
|
19889
19900
|
}, [stroke]);
|
|
19890
19901
|
return /*#__PURE__*/React__default["default"].createElement(StyledProgressBar, {
|
|
19891
|
-
className: "c-progress-bar",
|
|
19902
|
+
className: classNames__default["default"]("c-progress-bar", className),
|
|
19892
19903
|
$color: backgroundColor,
|
|
19893
19904
|
$width: widthPercent
|
|
19894
19905
|
}, /*#__PURE__*/React__default["default"].createElement(StyledProgressBarProgress, {
|
|
@@ -20684,7 +20695,8 @@
|
|
|
20684
20695
|
onClick: externalOnClick,
|
|
20685
20696
|
trimDecimals,
|
|
20686
20697
|
min,
|
|
20687
|
-
max
|
|
20698
|
+
max,
|
|
20699
|
+
shortenThreshold: 10000
|
|
20688
20700
|
}, inputRef),
|
|
20689
20701
|
value = _useInputNumber.value,
|
|
20690
20702
|
onBlur = _useInputNumber.onBlur,
|