Avoid double-applying timezone offset on return dates

This commit is contained in:
2026-09-20 12:30:32 -04:00
parent 745d18c041
commit 46b42fbbed
2 changed files with 3 additions and 9 deletions
@@ -622,10 +622,7 @@ function Vt(s, t) {
const o = new Date(n, i - 1, r); const o = new Date(n, i - 1, r);
return Number.isNaN(o.getTime()) ? null : o; return Number.isNaN(o.getTime()) ? null : o;
} }
let a = Date.UTC(n, i - 1, r); const a = Date.UTC(n, i - 1, r), l = new Date(a - Wt(a, t));
for (let o = 0; o < 2; o += 1)
a -= Wt(a, t);
const l = new Date(a);
return Number.isNaN(l.getTime()) ? null : l; return Number.isNaN(l.getTime()) ? null : l;
} }
function Zt(s) { function Zt(s) {
+2 -5
View File
@@ -181,11 +181,8 @@ function parseIsoDate(value: unknown, timeZone?: string): Date | null {
const local = new Date(year, month - 1, day); const local = new Date(year, month - 1, day);
return Number.isNaN(local.getTime()) ? null : local; return Number.isNaN(local.getTime()) ? null : local;
} }
let utcMs = Date.UTC(year, month - 1, day); const utcMs = Date.UTC(year, month - 1, day);
for (let pass = 0; pass < 2; pass += 1) { const date = new Date(utcMs - zoneOffsetMs(utcMs, timeZone));
utcMs -= zoneOffsetMs(utcMs, timeZone);
}
const date = new Date(utcMs);
return Number.isNaN(date.getTime()) ? null : date; return Number.isNaN(date.getTime()) ? null : date;
} }