|
256 | 256 | expenseChartOptions = new ApexChartOptions<ChartDataItem> |
257 | 257 | { |
258 | 258 | Theme = new Theme { Mode = mode }, |
259 | | - Chart = new Chart { Background = background }, |
| 259 | + Chart = new Chart |
| 260 | + { |
| 261 | + Background = background, |
| 262 | + // Safari fix: ensure proper event handling |
| 263 | + Animations = new Animations { Enabled = true } |
| 264 | + }, |
| 265 | + Tooltip = new Tooltip |
| 266 | + { |
| 267 | + Enabled = true, |
| 268 | + FillSeriesColor = false, |
| 269 | + // Safari fix: use followCursor for better touch/hover detection |
| 270 | + FollowCursor = true |
| 271 | + }, |
260 | 272 | DataLabels = new DataLabels |
261 | 273 | { |
262 | 274 | Style = new DataLabelsStyle |
|
284 | 296 | incomeExpenseChartOptions = new ApexChartOptions<ChartDataItem> |
285 | 297 | { |
286 | 298 | Theme = new Theme { Mode = mode }, |
287 | | - Chart = new Chart { Background = background }, |
288 | | - Colors = new List<string> { "#66BB6A", "#EF5350" }, // Lighter green/red for better dark mode visibility |
| 299 | + Chart = new Chart |
| 300 | + { |
| 301 | + Background = background, |
| 302 | + Animations = new Animations { Enabled = true } |
| 303 | + }, |
| 304 | + Tooltip = new Tooltip |
| 305 | + { |
| 306 | + Enabled = true, |
| 307 | + FollowCursor = true, |
| 308 | + Intersect = false, |
| 309 | + Shared = true |
| 310 | + }, |
| 311 | + Colors = new List<string> { "#66BB6A", "#EF5350" }, |
289 | 312 | PlotOptions = new PlotOptions |
290 | 313 | { |
291 | 314 | Bar = new PlotOptionsBar |
|
300 | 323 | { |
301 | 324 | Style = new DataLabelsStyle |
302 | 325 | { |
303 | | - Colors = new List<string> { "#ffffff" } // White text on colored bars |
| 326 | + Colors = new List<string> { "#ffffff" } |
304 | 327 | }, |
305 | 328 | Formatter = @"function(value) { return '$' + Math.abs(value).toLocaleString(undefined, { minimumFractionDigits: 2, maximumFractionDigits: 2 }); }" |
306 | 329 | }, |
|
326 | 349 | trendChartOptions = new ApexChartOptions<TrendDataItem> |
327 | 350 | { |
328 | 351 | Theme = new Theme { Mode = mode }, |
329 | | - Chart = new Chart { Background = background }, |
330 | | - Colors = new List<string> { "#66BB6A", "#EF5350" }, // Lighter green/red for better visibility |
| 352 | + Chart = new Chart |
| 353 | + { |
| 354 | + Background = background, |
| 355 | + Animations = new Animations { Enabled = true } |
| 356 | + }, |
| 357 | + Tooltip = new Tooltip |
| 358 | + { |
| 359 | + Enabled = true, |
| 360 | + FollowCursor = true, |
| 361 | + Intersect = false, |
| 362 | + Shared = true |
| 363 | + }, |
| 364 | + Colors = new List<string> { "#66BB6A", "#EF5350" }, |
331 | 365 | Stroke = new Stroke { Curve = Curve.Smooth, Width = 3 }, |
| 366 | + Markers = new Markers |
| 367 | + { |
| 368 | + Size = 5, |
| 369 | + Hover = new MarkersHover { SizeOffset = 3 } |
| 370 | + }, |
332 | 371 | Legend = new Legend |
333 | 372 | { |
334 | 373 | Labels = new LegendLabels { Colors = foreground } |
|
356 | 395 | accountChartOptions = new ApexChartOptions<AccountChartDataItem> |
357 | 396 | { |
358 | 397 | Theme = new Theme { Mode = mode }, |
359 | | - Chart = new Chart { Background = background }, |
360 | | - Colors = new List<string> { "#66BB6A", "#EF5350" }, // Green for credits, Red for debits |
| 398 | + Chart = new Chart |
| 399 | + { |
| 400 | + Background = background, |
| 401 | + Animations = new Animations { Enabled = true } |
| 402 | + }, |
| 403 | + Tooltip = new Tooltip |
| 404 | + { |
| 405 | + Enabled = true, |
| 406 | + FollowCursor = true, |
| 407 | + Intersect = false, |
| 408 | + Shared = true |
| 409 | + }, |
| 410 | + Colors = new List<string> { "#66BB6A", "#EF5350" }, |
361 | 411 | PlotOptions = new PlotOptions |
362 | 412 | { |
363 | 413 | Bar = new PlotOptionsBar |
|
590 | 640 | } |
591 | 641 | ); |
592 | 642 |
|
593 | | - // Group splits by the transaction's period |
| 643 | + // Group splits with enhanced error handling |
594 | 644 | var groupedSplits = transactionSplits |
595 | 645 | .Where(s => !s.Category.Name.StartsWith("Transfer:[")) |
596 | 646 | .Select(s => new |
|
0 commit comments