fix: pluralize unit word using the maxDecimalPoints-truncated count

When maxDecimalPoints truncates a unit count to exactly 1, the rendered
number showed 1 while the word was pluralized from the raw count (for
example humanizeDuration(1500, { maxDecimalPoints: 0 }) returned
"1 seconds"). Pluralize from the normalized count that is actually
displayed so the number and word agree.
This commit is contained in:
dualfroz committed 2026-09-06 01:13:13 +02:00
1 parent ddd1c2df9e
commit 117fd38eeb
2 files changed
+16 -1

No files matched your search

+3 -1
View File
@@ -1382,7 +1382,9 @@
var languageWord = language[unitName];
var word;
if (typeof languageWord === "function") {
word = languageWord(unitCount);
// Pluralize on the rendered count: `maxDecimalPoints` may truncate 1.5 to
// "1", and the word must agree with what is shown.
word = languageWord(normalizedUnitCount);
} else {
word = languageWord;
}