Skip to content

Commit 1cc98c3

Browse files
12wrigjaptomato
authored andcommitted
Fix division issues caught by tsc in RoundDuration.
1 parent 7838d49 commit 1cc98c3

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

lib/ecmascript.mjs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3898,8 +3898,8 @@ export const ES = ObjectAssign({}, ES2020, {
38983898
oneYearDays = MathAbs(oneYearDays);
38993899
const divisor = bigInt(oneYearDays).multiply(dayLengthNs);
39003900
nanoseconds = divisor.multiply(years).plus(bigInt(days).multiply(dayLengthNs)).plus(nanoseconds);
3901-
const rounded = ES.RoundNumberToIncrement(nanoseconds, divisor * increment, roundingMode);
3902-
total = nanoseconds.toJSNumber() / divisor;
3901+
const rounded = ES.RoundNumberToIncrement(nanoseconds, divisor.toJSNumber() * increment, roundingMode);
3902+
total = nanoseconds.toJSNumber() / divisor.toJSNumber();
39033903
years = rounded.divide(divisor).toJSNumber();
39043904
nanoseconds = months = weeks = days = 0;
39053905
break;
@@ -3940,8 +3940,8 @@ export const ES = ObjectAssign({}, ES2020, {
39403940
oneMonthDays = MathAbs(oneMonthDays);
39413941
const divisor = bigInt(oneMonthDays).multiply(dayLengthNs);
39423942
nanoseconds = divisor.multiply(months).plus(bigInt(days).multiply(dayLengthNs)).plus(nanoseconds);
3943-
const rounded = ES.RoundNumberToIncrement(nanoseconds, divisor * increment, roundingMode);
3944-
total = nanoseconds.toJSNumber() / divisor;
3943+
const rounded = ES.RoundNumberToIncrement(nanoseconds, divisor.toJSNumber() * increment, roundingMode);
3944+
total = nanoseconds.toJSNumber() / divisor.toJSNumber();
39453945
months = rounded.divide(divisor).toJSNumber();
39463946
nanoseconds = weeks = days = 0;
39473947
break;
@@ -3962,17 +3962,17 @@ export const ES = ObjectAssign({}, ES2020, {
39623962
oneWeekDays = MathAbs(oneWeekDays);
39633963
const divisor = bigInt(oneWeekDays).multiply(dayLengthNs);
39643964
nanoseconds = divisor.multiply(weeks).plus(bigInt(days).multiply(dayLengthNs)).plus(nanoseconds);
3965-
const rounded = ES.RoundNumberToIncrement(nanoseconds, divisor * increment, roundingMode);
3966-
total = nanoseconds.toJSNumber() / divisor;
3965+
const rounded = ES.RoundNumberToIncrement(nanoseconds, divisor.toJSNumber() * increment, roundingMode);
3966+
total = nanoseconds.toJSNumber() / divisor.toJSNumber();
39673967
weeks = rounded.divide(divisor).toJSNumber();
39683968
nanoseconds = days = 0;
39693969
break;
39703970
}
39713971
case 'day': {
39723972
const divisor = bigInt(dayLengthNs);
39733973
nanoseconds = divisor.multiply(days).plus(nanoseconds);
3974-
const rounded = ES.RoundNumberToIncrement(nanoseconds, divisor * increment, roundingMode);
3975-
total = nanoseconds.toJSNumber() / divisor;
3974+
const rounded = ES.RoundNumberToIncrement(nanoseconds, divisor.toJSNumber() * increment, roundingMode);
3975+
total = nanoseconds.toJSNumber() / divisor.toJSNumber();
39763976
days = rounded.divide(divisor).toJSNumber();
39773977
nanoseconds = 0;
39783978
break;

0 commit comments

Comments
 (0)