mirror of
https://github.com/jason5ng32/MyIP.git
synced 2026-11-04 08:55:47 +00:00
Feat(ip-infos): show each IP's time zone, derived from its own coordinates
Every geo route now returns an IANA zone name, added on the way out by the withTimeZone() middleware rather than by any handler — including the private API pass-through, which needs no new upstream field. The zone is derived from the latitude/longitude the response itself carries, not from a second lookup of the same IP. Asking another database would eventually place the address elsewhere and print a zone that contradicts the city next to it. Coordinate accuracy measured against MaxMind's own time_zone over 30k sampled addresses: 99.80% exact, 99.98% correct offset; the rest are neighbouring zones across a land border that share an offset anyway. Only the name ships. Geo routes sit behind a 24h edge cache, so a cached UTC offset would be an hour wrong for everyone between a DST switch and the entry's expiry — the frontend renders the offset per view instead, reusing the formatter the analytics path already had. The field travels the full report path: event payload, builder, schema (as a typed timeZone kind, not a free string), the /r/:id table, the Markdown export and the JSON download. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
6c679b20a1
commit
83bdd54674
23 files changed
+468
-25
No files matched your search
@@ -22,6 +22,7 @@
|
||||
"@iconify/vue": "^5.0.1",
|
||||
"@khmyznikov/pwa-install": "^0.6.4",
|
||||
"@lucide/vue": "^1.28.0",
|
||||
"@photostructure/tz-lookup": "^11.6.1",
|
||||
"@sentry/node": "^10.69.0",
|
||||
"@sentry/vue": "^10.69.0",
|
||||
"@tanstack/vue-table": "^9.0.0",
|
||||
|
||||
Reference in new issue
Block a user