Compare commits

...

2 commits

Author SHA1 Message Date
Alec Armbruster
64ce679736
Merge branch 'main' into fix_tz_issue 2023-06-28 23:06:12 -04:00
Dessalines
d9a3ba8762 Fixing timezone issue with date-fns. Fixes #1680 2023-06-28 19:14:32 -04:00
4 changed files with 14 additions and 9 deletions

View file

@ -52,6 +52,7 @@
"cross-fetch": "^3.1.5",
"css-loader": "^6.7.3",
"date-fns": "^2.30.0",
"date-fns-tz": "^2.0.0",
"emoji-mart": "^5.4.0",
"emoji-short-name": "^2.0.0",
"express": "~4.18.2",

View file

@ -1,5 +1,5 @@
import { capitalizeFirstLetter, formatPastDate } from "@utils/helpers";
import format from "date-fns/format";
import { formatInTimeZone } from "date-fns-tz";
import parseISO from "date-fns/parseISO";
import { Component } from "inferno";
import { I18NextService } from "../../services";
@ -13,7 +13,9 @@ interface MomentTimeProps {
}
function formatDate(input: string) {
return format(parseISO(input), "PPPPpppp");
const tz = Intl.DateTimeFormat().resolvedOptions().timeZone;
const parsed = parseISO(input + "Z");
return formatInTimeZone(parsed, tz, "PPPPpppp");
}
export class MomentTime extends Component<MomentTimeProps, any> {

View file

@ -2,11 +2,8 @@ import formatDistanceStrict from "date-fns/formatDistanceStrict";
import parseISO from "date-fns/parseISO";
export default function (dateString?: string) {
return formatDistanceStrict(
parseISO(dateString ?? Date.now().toString()),
new Date(),
{
const parsed = parseISO((dateString ?? Date.now().toString()) + "Z");
return formatDistanceStrict(parsed, new Date(), {
addSuffix: true,
}
);
});
}

View file

@ -3237,6 +3237,11 @@ dashdash@^1.12.0:
dependencies:
assert-plus "^1.0.0"
date-fns-tz@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/date-fns-tz/-/date-fns-tz-2.0.0.tgz#1b14c386cb8bc16fc56fe333d4fc34ae1d1099d5"
integrity sha512-OAtcLdB9vxSXTWHdT8b398ARImVwQMyjfYGkKD2zaGpHseG2UPHbHjXELReErZFxWdSLph3c2zOaaTyHfOhERQ==
date-fns@^2.30.0:
version "2.30.0"
resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.30.0.tgz#f367e644839ff57894ec6ac480de40cae4b0f4d0"