From: Tom Hughes Date: Fri, 21 Mar 2025 17:44:37 +0000 (+0000) Subject: Merge remote-tracking branch 'upstream/pull/5834' X-Git-Tag: live~50 X-Git-Url: https://git.openstreetmap.org./rails.git/commitdiff_plain/6af214b2285d3292f214320b7221f7c9a1d76914?hp=-c Merge remote-tracking branch 'upstream/pull/5834' --- 6af214b2285d3292f214320b7221f7c9a1d76914 diff --combined app/assets/javascripts/heatmap.js index 9c8d65cf4,240707609..831ac4b6e --- a/app/assets/javascripts/heatmap.js +++ b/app/assets/javascripts/heatmap.js @@@ -11,14 -11,11 +11,13 @@@ document.addEventListener("DOMContentLo return; } + /** @type {{date: string; max_id: number; total_changes: number}[]} */ const heatmapData = heatmapElement.dataset.heatmap ? JSON.parse(heatmapElement.dataset.heatmap) : []; const displayName = heatmapElement.dataset.displayName; const colorScheme = document.documentElement.getAttribute("data-bs-theme") ?? "auto"; - const rangeColors = ["#14432a", "#166b34", "#37a446", "#4dd05a"]; + const rangeColorsDark = ["#14432a", "#4dd05a"]; + const rangeColorsLight = ["#4dd05a", "#14432a"]; const startDate = new Date(Date.now() - (365 * 24 * 60 * 60 * 1000)); - const monthNames = OSM.i18n.t("date.abbr_month_names"); const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)"); @@@ -36,7 -33,7 +35,7 @@@ type: "month", gutter: 4, label: { - text: (timestamp) => monthNames[new Date(timestamp).getUTCMonth() + 1], + text: (timestamp) => new Date(timestamp).toLocaleString(OSM.i18n.locale, { timeZone: "UTC", month: "short" }), position: "top", textAlign: "middle" }, @@@ -61,9 -58,9 +60,9 @@@ }, scale: { color: { - type: "threshold", - range: currentTheme === "dark" ? rangeColors : Array.from(rangeColors).reverse(), - domain: [10, 20, 30, 40] + type: "sqrt", + range: currentTheme === "dark" ? rangeColorsDark : rangeColorsLight, + domain: [0, Math.max(0, ...heatmapData.map(d => d.total_changes))] } } }, [