Guillem Arias Fauste
998cfd61d6
refactor(charts): extract shared chart-tooltip className to one source ( #2106 )
...
Closes #2011 .
time-series and sankey each created their cursor-following tooltip with a
duplicated className literal that had already drifted apart: time-series was
missing `text-primary` and `z-50`. Move the visual contract into
app/javascript/utils/chart_tooltip.js as CHART_TOOLTIP_CLASSES and have both
controllers reference it. Each keeps its own behavioural classes (time-series
its initial `opacity-0`; both `top-0`; sankey toggles opacity via inline
style). `privacy-sensitive` stays bundled so future copies can't drop it.
Also exports a createChartTooltip factory for the raw-DOM idiom.
goal_projection_chart_controller is not in main yet (it lands with the goals
work in #1798 ); it migrates to the same symbol there.
2026-06-02 23:59:55 +02:00
..
2026-02-15 09:34:34 +01:00
2026-05-13 18:13:48 +02:00
2026-01-16 21:04:10 +01:00
2026-03-14 11:32:33 +01:00
2026-05-05 00:47:45 +02:00
2026-04-11 19:33:30 +02:00
2025-04-30 18:14:22 -04:00
2026-03-14 23:56:27 +01:00
2026-01-24 01:11:56 +01:00
2025-07-23 18:21:37 -04:00
2026-05-24 13:43:36 +02:00
2026-04-13 23:32:27 +02:00
2025-01-16 14:36:37 -05:00
2026-05-18 20:49:28 +02:00
2026-01-23 09:52:15 +01:00
2026-04-07 11:24:50 +02:00
2026-03-20 21:19:30 +01:00
2026-05-30 01:30:11 +02:00
2025-12-24 01:57:16 +01:00
2024-10-14 17:09:27 -04:00
2026-04-01 20:25:06 +02:00
2025-04-30 18:14:22 -04:00
2026-02-19 19:55:10 +01:00
2026-06-02 14:00:16 +02:00
2024-10-14 17:09:27 -04:00
2025-04-30 18:14:22 -04:00
2026-03-07 10:17:27 +00:00
2026-03-07 10:17:27 +00:00
2026-04-18 00:06:08 +02:00
2026-01-23 00:24:29 +01:00
2026-03-23 17:07:12 -07:00
2025-04-30 18:14:22 -04:00
2026-05-30 16:20:21 +02:00
2026-01-10 16:39:18 +01:00
2026-03-07 10:17:27 +00:00
2024-10-14 17:09:27 -04:00
2026-04-08 21:05:58 +02:00
2025-04-18 08:23:10 -05:00
2026-04-08 21:05:58 +02:00
2026-06-02 14:00:16 +02:00
2026-06-02 14:00:16 +02:00
2026-06-02 14:00:16 +02:00
2026-06-02 14:00:16 +02:00
2026-01-23 12:54:55 +01:00
2024-10-14 17:09:27 -04:00
2026-01-23 22:12:02 +01:00
2024-10-14 17:09:27 -04:00
2026-01-24 01:11:56 +01:00
2026-04-04 13:29:43 +02:00
2024-10-14 17:09:27 -04:00
2025-10-22 19:51:24 +02:00
2025-11-22 02:14:29 +01:00
2025-04-18 08:23:10 -05:00
2026-04-07 12:19:17 +02:00
2025-08-03 07:35:34 +02:00
2026-02-13 19:30:29 +01:00
2026-05-04 21:47:01 +02:00
2025-04-18 08:23:10 -05:00
2026-05-28 14:55:21 +02:00
2026-05-08 15:15:23 +02:00
2025-05-22 11:46:57 -04:00
2026-03-01 17:46:50 +01:00
2025-04-18 08:23:10 -05:00
2026-06-02 21:44:57 +02:00
2026-04-05 09:27:24 +02:00
2026-01-23 00:24:29 +01:00
2025-12-02 17:10:55 +01:00
2025-05-13 10:34:41 -04:00
2026-06-02 23:59:55 +02:00
2025-05-22 11:46:57 -04:00
2026-01-21 22:56:39 +01:00
2026-05-20 18:19:58 +02:00
2025-01-30 14:12:01 -05:00
2026-03-29 17:28:07 +02:00
2026-01-08 15:38:13 +01:00
2026-05-31 16:05:54 +02:00
2026-06-01 21:46:32 +02:00
2026-05-20 18:13:07 +02:00
2026-06-02 23:59:55 +02:00
2024-10-14 17:09:27 -04:00
2024-11-27 16:01:50 -05:00
2026-04-08 21:05:58 +02:00
2026-04-11 00:56:05 +02:00
2026-01-23 00:24:29 +01:00
2026-04-08 21:05:58 +02:00
2025-01-07 09:41:24 -05:00
2025-05-26 20:05:16 -05:00
2026-02-16 23:36:27 +01:00
2026-05-03 22:13:28 +02:00
2026-05-03 22:13:28 +02:00
2026-05-03 22:13:28 +02:00