From 0843a2fa7ac99b742b2c94c80e16a17dc2f26e38 Mon Sep 17 00:00:00 2001 From: omkarht Date: Thu, 27 Nov 2025 12:38:30 +0530 Subject: [PATCH] fix: optimize tick interval calculation using dayjs for improved accuracy on-behalf-of: @Mermaid-Chart --- packages/mermaid/src/diagrams/gantt/ganttRenderer.js | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/packages/mermaid/src/diagrams/gantt/ganttRenderer.js b/packages/mermaid/src/diagrams/gantt/ganttRenderer.js index 287720315..da672da34 100644 --- a/packages/mermaid/src/diagrams/gantt/ganttRenderer.js +++ b/packages/mermaid/src/diagrams/gantt/ganttRenderer.js @@ -614,16 +614,7 @@ export const draw = function (text, id, version, diagObj) { */ function getEstimatedTickCount(minTime, maxTime, every, interval) { const timeDiffMs = maxTime - minTime; - const msPerUnit = { - millisecond: 1, - second: 1000, - minute: 60 * 1000, - hour: 60 * 60 * 1000, - day: 24 * 60 * 60 * 1000, - week: 7 * 24 * 60 * 60 * 1000, - month: 30 * 24 * 60 * 60 * 1000, // Approximate - }; - const intervalMs = (msPerUnit[interval] || msPerUnit.day) * every; + const intervalMs = dayjs.duration({ [interval ?? 'day']: every }).asMilliseconds(); return Math.ceil(timeDiffMs / intervalMs); }