From 0616b62f63094416848903942e5bf3b2cedfe726 Mon Sep 17 00:00:00 2001 From: user Date: Sat, 28 Feb 2026 16:14:56 -0800 Subject: [PATCH] fix: include timezone offset in all displayed timestamps All isoDate() functions now output proper ISO 8601 format with timezone offset (e.g. 2026-02-28T15:30:00-08:00) instead of bare datetime strings. Also uses 'T' separator per ISO 8601. closes #116 --- src/popup/views/addressDetail.js | 9 +++++++-- src/popup/views/helpers.js | 9 +++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/popup/views/addressDetail.js b/src/popup/views/addressDetail.js index fd28e96..4f3ebec 100644 --- a/src/popup/views/addressDetail.js +++ b/src/popup/views/addressDetail.js @@ -95,18 +95,23 @@ function show() { function isoDate(timestamp) { const d = new Date(timestamp * 1000); const pad = (n) => String(n).padStart(2, "0"); + const offsetMin = -d.getTimezoneOffset(); + const sign = offsetMin >= 0 ? "+" : "-"; + const absOff = Math.abs(offsetMin); + const tzStr = sign + pad(Math.floor(absOff / 60)) + ":" + pad(absOff % 60); return ( d.getFullYear() + "-" + pad(d.getMonth() + 1) + "-" + pad(d.getDate()) + - " " + + "T" + pad(d.getHours()) + ":" + pad(d.getMinutes()) + ":" + - pad(d.getSeconds()) + pad(d.getSeconds()) + + tzStr ); } diff --git a/src/popup/views/helpers.js b/src/popup/views/helpers.js index 45329ea..f3d987d 100644 --- a/src/popup/views/helpers.js +++ b/src/popup/views/helpers.js @@ -226,18 +226,23 @@ function formatAddressHtml(address, ensName, maxLen, title) { function isoDate(timestamp) { const d = new Date(timestamp * 1000); const pad = (n) => String(n).padStart(2, "0"); + const offsetMin = -d.getTimezoneOffset(); + const sign = offsetMin >= 0 ? "+" : "-"; + const absOff = Math.abs(offsetMin); + const tzStr = sign + pad(Math.floor(absOff / 60)) + ":" + pad(absOff % 60); return ( d.getFullYear() + "-" + pad(d.getMonth() + 1) + "-" + pad(d.getDate()) + - " " + + "T" + pad(d.getHours()) + ":" + pad(d.getMinutes()) + ":" + - pad(d.getSeconds()) + pad(d.getSeconds()) + + tzStr ); }