fix #100 (#180)
All checks were successful
Publish latest version / build (push) Successful in 1m30s

Close #100

We use Intl.DateTimeFormat to format the date, using the local provided from
1st: the guild info
2nd: the default lang used for Botanique

Reviewed-on: #180
Co-authored-by: Mylloon <kennel.anri@tutanota.com>
Co-committed-by: Mylloon <kennel.anri@tutanota.com>
This commit is contained in:
Mylloon 2024-09-24 18:37:04 +02:00 committed by Mylloon
parent b1abeefad2
commit a08d0c0e9b
Signed by: Forgejo
GPG key ID: E72245C752A07631

View file

@ -5,8 +5,16 @@
* @param date Date
* @returns String
*/
export const showDate = (tz: string, locale: Map<string, unknown>, date: Date) =>
date.toLocaleString(tz).replace(" ", ` ${locale.get("u_time_at")} `);
export const showDate = (tz: string, locale: Map<string, unknown>, date: Date) => {
const formattedDate = new Intl.DateTimeFormat(tz, {
dateStyle: "short",
timeStyle: "medium",
})
.format(date)
.split(" ");
return `${formattedDate[0]} ${locale.get("u_time_at")} ${formattedDate[1]}`;
};
enum TimeSecond {
Year = 31536000,
@ -63,5 +71,6 @@ export const strToSeconds = (time: string) => {
export const timeDeltaToString = (time: number) => {
const now = Date.now();
// TODO adapt the output and not always parse the time as seconds
// Use Intl.RelativeTimeFormat ?
return `${strToSeconds(`${(now - time) / 1000}`)} secs`;
};