@mantine/charts 9.4.3-alpha.0 → 9.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/cjs/AreaChart/AreaChart.cjs +12 -3
  2. package/cjs/AreaChart/AreaChart.cjs.map +1 -1
  3. package/cjs/BarChart/BarChart.cjs +12 -3
  4. package/cjs/BarChart/BarChart.cjs.map +1 -1
  5. package/cjs/BubbleChart/BubbleChart.cjs +70 -66
  6. package/cjs/BubbleChart/BubbleChart.cjs.map +1 -1
  7. package/cjs/BulletChart/BulletChart.cjs +137 -0
  8. package/cjs/BulletChart/BulletChart.cjs.map +1 -0
  9. package/cjs/BulletChart/BulletChart.module.cjs +18 -0
  10. package/cjs/BulletChart/BulletChart.module.cjs.map +1 -0
  11. package/cjs/ChartBrush/ChartBrush.cjs +35 -0
  12. package/cjs/ChartBrush/ChartBrush.cjs.map +1 -0
  13. package/cjs/ChartBrush/ChartBrush.module.cjs +7 -0
  14. package/cjs/ChartBrush/ChartBrush.module.cjs.map +1 -0
  15. package/cjs/CompositeChart/CompositeChart.cjs +12 -3
  16. package/cjs/CompositeChart/CompositeChart.cjs.map +1 -1
  17. package/cjs/DonutChart/DonutChart.cjs +5 -3
  18. package/cjs/DonutChart/DonutChart.cjs.map +1 -1
  19. package/cjs/DonutChart/DonutChart.module.cjs.map +1 -1
  20. package/cjs/FunnelChart/FunnelChart.cjs +5 -3
  21. package/cjs/FunnelChart/FunnelChart.cjs.map +1 -1
  22. package/cjs/FunnelChart/FunnelChart.module.cjs.map +1 -1
  23. package/cjs/Heatmap/Heatmap.cjs +12 -5
  24. package/cjs/Heatmap/Heatmap.cjs.map +1 -1
  25. package/cjs/LineChart/LineChart.cjs +12 -3
  26. package/cjs/LineChart/LineChart.cjs.map +1 -1
  27. package/cjs/PieChart/PieChart.cjs +5 -3
  28. package/cjs/PieChart/PieChart.cjs.map +1 -1
  29. package/cjs/PieChart/PieChart.module.cjs.map +1 -1
  30. package/cjs/RadarChart/RadarChart.cjs +5 -3
  31. package/cjs/RadarChart/RadarChart.cjs.map +1 -1
  32. package/cjs/RadarChart/RadarChart.module.cjs.map +1 -1
  33. package/cjs/RadialBarChart/RadialBarChart.cjs +5 -3
  34. package/cjs/RadialBarChart/RadialBarChart.cjs.map +1 -1
  35. package/cjs/RadialBarChart/RadialBarChart.module.cjs.map +1 -1
  36. package/cjs/SankeyChart/SankeyChart.cjs +1 -1
  37. package/cjs/ScatterChart/ScatterChart.cjs +5 -3
  38. package/cjs/ScatterChart/ScatterChart.cjs.map +1 -1
  39. package/cjs/Sparkline/Sparkline.cjs +1 -1
  40. package/cjs/SunburstChart/SunburstChart.cjs +129 -0
  41. package/cjs/SunburstChart/SunburstChart.cjs.map +1 -0
  42. package/cjs/SunburstChart/SunburstChart.module.cjs +7 -0
  43. package/cjs/SunburstChart/SunburstChart.module.cjs.map +1 -0
  44. package/cjs/Treemap/Treemap.cjs +1 -1
  45. package/cjs/grid-chart.module.cjs.map +1 -1
  46. package/cjs/index.cjs +6 -0
  47. package/esm/AreaChart/AreaChart.mjs +12 -3
  48. package/esm/AreaChart/AreaChart.mjs.map +1 -1
  49. package/esm/BarChart/BarChart.mjs +12 -3
  50. package/esm/BarChart/BarChart.mjs.map +1 -1
  51. package/esm/BubbleChart/BubbleChart.mjs +70 -66
  52. package/esm/BubbleChart/BubbleChart.mjs.map +1 -1
  53. package/esm/BulletChart/BulletChart.mjs +137 -0
  54. package/esm/BulletChart/BulletChart.mjs.map +1 -0
  55. package/esm/BulletChart/BulletChart.module.mjs +18 -0
  56. package/esm/BulletChart/BulletChart.module.mjs.map +1 -0
  57. package/esm/ChartBrush/ChartBrush.mjs +35 -0
  58. package/esm/ChartBrush/ChartBrush.mjs.map +1 -0
  59. package/esm/ChartBrush/ChartBrush.module.mjs +7 -0
  60. package/esm/ChartBrush/ChartBrush.module.mjs.map +1 -0
  61. package/esm/CompositeChart/CompositeChart.mjs +12 -3
  62. package/esm/CompositeChart/CompositeChart.mjs.map +1 -1
  63. package/esm/DonutChart/DonutChart.mjs +5 -3
  64. package/esm/DonutChart/DonutChart.mjs.map +1 -1
  65. package/esm/DonutChart/DonutChart.module.mjs.map +1 -1
  66. package/esm/FunnelChart/FunnelChart.mjs +5 -3
  67. package/esm/FunnelChart/FunnelChart.mjs.map +1 -1
  68. package/esm/FunnelChart/FunnelChart.module.mjs.map +1 -1
  69. package/esm/Heatmap/Heatmap.mjs +12 -5
  70. package/esm/Heatmap/Heatmap.mjs.map +1 -1
  71. package/esm/LineChart/LineChart.mjs +12 -3
  72. package/esm/LineChart/LineChart.mjs.map +1 -1
  73. package/esm/PieChart/PieChart.mjs +5 -3
  74. package/esm/PieChart/PieChart.mjs.map +1 -1
  75. package/esm/PieChart/PieChart.module.mjs.map +1 -1
  76. package/esm/RadarChart/RadarChart.mjs +5 -3
  77. package/esm/RadarChart/RadarChart.mjs.map +1 -1
  78. package/esm/RadarChart/RadarChart.module.mjs.map +1 -1
  79. package/esm/RadialBarChart/RadialBarChart.mjs +5 -3
  80. package/esm/RadialBarChart/RadialBarChart.mjs.map +1 -1
  81. package/esm/RadialBarChart/RadialBarChart.module.mjs.map +1 -1
  82. package/esm/SankeyChart/SankeyChart.mjs +1 -1
  83. package/esm/ScatterChart/ScatterChart.mjs +5 -3
  84. package/esm/ScatterChart/ScatterChart.mjs.map +1 -1
  85. package/esm/Sparkline/Sparkline.mjs +1 -1
  86. package/esm/SunburstChart/SunburstChart.mjs +129 -0
  87. package/esm/SunburstChart/SunburstChart.mjs.map +1 -0
  88. package/esm/SunburstChart/SunburstChart.module.mjs +7 -0
  89. package/esm/SunburstChart/SunburstChart.module.mjs.map +1 -0
  90. package/esm/Treemap/Treemap.mjs +1 -1
  91. package/esm/grid-chart.module.mjs.map +1 -1
  92. package/esm/index.mjs +4 -1
  93. package/lib/BubbleChart/BubbleChart.d.ts +2 -0
  94. package/lib/BulletChart/BulletChart.d.ts +58 -0
  95. package/lib/BulletChart/index.d.ts +9 -0
  96. package/lib/ChartBrush/ChartBrush.d.ts +15 -0
  97. package/lib/ChartBrush/index.d.ts +2 -0
  98. package/lib/DonutChart/DonutChart.d.ts +2 -0
  99. package/lib/FunnelChart/FunnelChart.d.ts +2 -0
  100. package/lib/Heatmap/Heatmap.d.ts +2 -0
  101. package/lib/PieChart/PieChart.d.ts +2 -0
  102. package/lib/RadarChart/RadarChart.d.ts +2 -0
  103. package/lib/RadialBarChart/RadialBarChart.d.ts +2 -0
  104. package/lib/ScatterChart/ScatterChart.d.ts +2 -2
  105. package/lib/SunburstChart/SunburstChart.d.ts +58 -0
  106. package/lib/SunburstChart/index.d.ts +10 -0
  107. package/lib/index.d.mts +3 -0
  108. package/lib/index.d.ts +3 -0
  109. package/lib/types.d.ts +8 -2
  110. package/package.json +3 -3
  111. package/styles.css +218 -2
  112. package/styles.layer.css +218 -2
package/lib/types.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { CartesianGridProps, DotProps, LabelProps, LegendProps, ReferenceLineProps, TooltipProps, XAxisProps, YAxisProps } from 'recharts';
1
+ import type { BrushProps, CartesianGridProps, DotProps, LabelProps, LegendProps, ReferenceLineProps, TooltipProps, XAxisProps, YAxisProps } from 'recharts';
2
2
  import type { MantineColor } from '@mantine/core';
3
3
  export interface ChartReferenceLineProps extends Omit<ReferenceLineProps, 'ref' | 'label'> {
4
4
  color?: MantineColor;
@@ -11,7 +11,7 @@ export interface ChartSeries {
11
11
  label?: string;
12
12
  yAxisId?: string;
13
13
  }
14
- export type BaseChartStylesNames = 'root' | 'container' | 'axis' | 'grid' | 'referenceLine' | 'axisLabel';
14
+ export type BaseChartStylesNames = 'root' | 'container' | 'axis' | 'grid' | 'referenceLine' | 'axisLabel' | 'brush';
15
15
  export type ChartData = Record<string, any>[];
16
16
  export interface GridChartBaseProps {
17
17
  /** Data used to display chart */
@@ -66,6 +66,12 @@ export interface GridChartBaseProps {
66
66
  rightYAxisLabel?: string;
67
67
  /** Determines whether additional y-axis should be displayed on the right side of the chart, `false` by default */
68
68
  withRightYAxis?: boolean;
69
+ /** Determines whether the chart should be keyboard-navigable with the recharts accessibility layer, `true` by default */
70
+ accessibilityLayer?: boolean;
71
+ /** Determines whether a brush (range selector) should be displayed under the chart, `false` by default */
72
+ withBrush?: boolean;
73
+ /** Props passed down to the `Brush` component */
74
+ brushProps?: Omit<BrushProps, 'ref'>;
69
75
  }
70
76
  export type MantineChartDotProps = Omit<DotProps, 'ref'> & {
71
77
  strokeWidth?: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mantine/charts",
3
- "version": "9.4.3-alpha.0",
3
+ "version": "9.5.0",
4
4
  "description": "Charts components built with recharts and Mantine",
5
5
  "homepage": "https://mantine.dev/",
6
6
  "license": "MIT",
@@ -35,8 +35,8 @@
35
35
  "directory": "packages/@mantine/charts"
36
36
  },
37
37
  "peerDependencies": {
38
- "@mantine/core": "9.4.3-alpha.0",
39
- "@mantine/hooks": "9.4.3-alpha.0",
38
+ "@mantine/core": "9.5.0",
39
+ "@mantine/hooks": "9.5.0",
40
40
  "react": "^19.2.0",
41
41
  "react-dom": "^19.2.0",
42
42
  "recharts": ">=3.2.1"
package/styles.css CHANGED
@@ -126,6 +126,19 @@
126
126
  padding: 0;
127
127
  }
128
128
 
129
+ .m_bb368c49 :where(text) {
130
+ font-size: var(--mantine-font-size-xs);
131
+ fill: var(--chart-text-color, var(--mantine-color-dimmed));
132
+ font-family: var(--mantine-font-family);
133
+ }
134
+ .m_bb368c49 :where(.recharts-brush-slide) {
135
+ fill: var(--mantine-primary-color-light);
136
+ fill-opacity: 1;
137
+ }
138
+ .m_bb368c49 :where(.recharts-brush-traveller) rect {
139
+ fill: var(--mantine-primary-color-filled);
140
+ }
141
+
129
142
  .m_a50f3e58 {
130
143
  display: block;
131
144
  width: 100%;
@@ -138,6 +151,15 @@
138
151
  outline: 0;
139
152
  }
140
153
 
154
+ .m_a50f3e58 :where(svg *) {
155
+ outline: 0;
156
+ }
157
+
158
+ .m_a50f3e58 svg:focus-visible {
159
+ outline: 2px solid var(--mantine-primary-color-filled);
160
+ outline-offset: calc(0.125rem * var(--mantine-scale));
161
+ }
162
+
141
163
  :where([data-mantine-color-scheme='light']) .m_a50f3e58 {
142
164
  --chart-grid-color: rgba(173, 181, 189, 0.6);
143
165
  --chart-cursor-fill: rgba(173, 181, 189, 0.15);
@@ -205,6 +227,11 @@
205
227
  overflow: visible;
206
228
  }
207
229
 
230
+ .m_a410e613 svg:focus-visible {
231
+ outline: 2px solid var(--mantine-primary-color-filled);
232
+ outline-offset: calc(0.125rem * var(--mantine-scale));
233
+ }
234
+
208
235
  .m_ddb0bfe3 {
209
236
  fill: var(--mantine-color-text);
210
237
  font-size: var(--mantine-font-size-sm);
@@ -225,6 +252,11 @@
225
252
  overflow: visible;
226
253
  }
227
254
 
255
+ .m_cd8943fd svg:focus-visible {
256
+ outline: 2px solid var(--mantine-primary-color-filled);
257
+ outline-offset: calc(0.125rem * var(--mantine-scale));
258
+ }
259
+
228
260
  :where([data-mantine-color-scheme='light']) .m_1f271cf7 {
229
261
  --chart-grid-color: rgba(173, 181, 189, 0.6);
230
262
  --chart-text-color: var(--mantine-color-gray-7);
@@ -240,10 +272,16 @@
240
272
  user-select: none;
241
273
  }
242
274
 
243
- .m_1f271cf7 :where(svg) {
275
+ .m_1f271cf7 :where(svg),
276
+ .m_1f271cf7 :where(svg *) {
244
277
  outline: 0;
245
278
  }
246
279
 
280
+ .m_1f271cf7 svg:focus-visible {
281
+ outline: 2px solid var(--mantine-primary-color-filled);
282
+ outline-offset: calc(0.125rem * var(--mantine-scale));
283
+ }
284
+
247
285
  .m_cf06f58c {
248
286
  height: 100%;
249
287
  width: 100%;
@@ -258,10 +296,16 @@
258
296
  --chart-cursor-color: var(--mantine-color-dark-4);
259
297
  }
260
298
 
261
- .m_cd2bd9e5 :where(svg) {
299
+ .m_cd2bd9e5 :where(svg),
300
+ .m_cd2bd9e5 :where(svg *) {
262
301
  outline: 0;
263
302
  }
264
303
 
304
+ .m_cd2bd9e5 svg:focus-visible {
305
+ outline: 2px solid var(--mantine-primary-color-filled);
306
+ outline-offset: calc(0.125rem * var(--mantine-scale));
307
+ }
308
+
265
309
  .m_6bcc3420 {
266
310
  padding: var(--mantine-spacing-md);
267
311
  box-shadow: var(--mantine-shadow-md);
@@ -291,6 +335,11 @@
291
335
  outline: 0;
292
336
  }
293
337
 
338
+ .m_80d531e7 svg:focus-visible {
339
+ outline: 2px solid var(--mantine-primary-color-filled);
340
+ outline-offset: calc(0.125rem * var(--mantine-scale));
341
+ }
342
+
294
343
  .m_2ef228c3 {
295
344
  display: block;
296
345
  width: fit-content;
@@ -405,3 +454,170 @@
405
454
  :where([data-mantine-color-scheme='dark']) .m_b42d2970 {
406
455
  --chart-link-color: var(--mantine-color-dark-5);
407
456
  }
457
+
458
+ .m_a73eff05 {
459
+ min-height: var(--chart-size, auto);
460
+ height: var(--chart-size, auto);
461
+ width: var(--chart-size, auto);
462
+ min-width: var(--chart-size, auto);
463
+ }
464
+
465
+ .m_a73eff05 :where(*) {
466
+ outline: 0;
467
+ }
468
+
469
+ .m_f1b033 {
470
+ display: flex;
471
+ align-items: center;
472
+ gap: var(--mantine-spacing-md);
473
+ width: 100%;
474
+ }
475
+
476
+ .m_f1b033[data-orientation='vertical'] {
477
+ flex-direction: column;
478
+ width: auto;
479
+ height: 100%;
480
+ }
481
+
482
+ .m_1ce939c3 {
483
+ font-size: var(--mantine-font-size-sm);
484
+ font-weight: var(--mantine-font-weight-medium);
485
+ white-space: nowrap;
486
+ color: var(--mantine-color-text);
487
+ }
488
+
489
+ .m_dcd57f19 {
490
+ position: relative;
491
+ flex: 1;
492
+ padding-top: calc(var(--mantine-font-size-xs) + calc(0.25rem * var(--mantine-scale)));
493
+ padding-bottom: calc(var(--mantine-font-size-xs) + calc(0.25rem * var(--mantine-scale)));
494
+ }
495
+
496
+ .m_dcd57f19[data-orientation='vertical'] {
497
+ flex: 1;
498
+ height: 100%;
499
+ padding-top: 0;
500
+ padding-bottom: 0;
501
+ padding-left: calc(var(--mantine-font-size-xs) + 40px);
502
+ padding-right: calc(var(--mantine-font-size-xs) + 40px);
503
+ }
504
+
505
+ .m_1d61ac1a {
506
+ position: relative;
507
+ height: var(--bullet-size);
508
+ border-radius: var(--mantine-radius-sm);
509
+ overflow: hidden;
510
+ }
511
+
512
+ [data-orientation='vertical'] > .m_1d61ac1a {
513
+ width: var(--bullet-size);
514
+ height: 100%;
515
+ }
516
+
517
+ .m_1d3df40c {
518
+ position: absolute;
519
+ top: 0;
520
+ left: 0;
521
+ height: 100%;
522
+ border-radius: var(--mantine-radius-sm);
523
+ }
524
+
525
+ [data-orientation='vertical'] > .m_1d61ac1a > .m_1d3df40c {
526
+ top: auto;
527
+ left: 0;
528
+ width: 100%;
529
+ height: auto;
530
+ border-radius: var(--mantine-radius-sm);
531
+ }
532
+
533
+ .m_8499ea2 {
534
+ position: absolute;
535
+ top: 50%;
536
+ left: 0;
537
+ height: var(--bullet-bar-size);
538
+ transform: translateY(-50%);
539
+ border-radius: 0 var(--mantine-radius-xs) var(--mantine-radius-xs) 0;
540
+ z-index: 1;
541
+ }
542
+
543
+ [data-orientation='vertical'] > .m_1d61ac1a > .m_8499ea2 {
544
+ top: auto;
545
+ left: 50%;
546
+ width: var(--bullet-bar-size);
547
+ height: auto;
548
+ transform: translateX(-50%);
549
+ border-radius: var(--mantine-radius-xs) var(--mantine-radius-xs) 0 0;
550
+ }
551
+
552
+ .m_8dec10a2 {
553
+ position: absolute;
554
+ top: 50%;
555
+ transform: translateY(-50%) translateX(-50%);
556
+ z-index: 2;
557
+ border-radius: var(--mantine-radius-xs);
558
+ }
559
+
560
+ :where([data-mantine-color-scheme='light']) .m_8dec10a2 {
561
+ background-color: var(--mantine-color-dark-filled);
562
+ }
563
+
564
+ :where([data-mantine-color-scheme='dark']) .m_8dec10a2 {
565
+ background-color: var(--mantine-color-white);
566
+ }
567
+
568
+ [data-orientation='vertical'] > .m_1d61ac1a > .m_8dec10a2 {
569
+ top: auto;
570
+ left: 50%;
571
+ transform: translateX(-50%) translateY(50%);
572
+ }
573
+
574
+ .m_18314248 {
575
+ position: absolute;
576
+ top: 0;
577
+ transform: translateX(-50%);
578
+ font-size: var(--mantine-font-size-xs);
579
+ color: var(--mantine-color-dimmed);
580
+ white-space: nowrap;
581
+ line-height: 1;
582
+ }
583
+
584
+ [data-orientation='vertical'] > .m_18314248 {
585
+ top: auto;
586
+ left: auto;
587
+ right: 0;
588
+ transform: translateY(50%);
589
+ }
590
+
591
+ .m_73d6c572 {
592
+ position: absolute;
593
+ bottom: 0;
594
+ transform: translateX(-50%);
595
+ font-size: var(--mantine-font-size-xs);
596
+ font-weight: var(--mantine-font-weight-bold);
597
+ color: var(--mantine-color-text);
598
+ white-space: nowrap;
599
+ line-height: 1;
600
+ }
601
+
602
+ [data-orientation='vertical'] > .m_73d6c572 {
603
+ bottom: auto;
604
+ left: 0;
605
+ transform: translateY(50%);
606
+ }
607
+
608
+ .m_abeb9372 {
609
+ position: absolute;
610
+ top: 0;
611
+ transform: translateX(-50%);
612
+ font-size: var(--mantine-font-size-xs);
613
+ color: var(--mantine-color-dimmed);
614
+ white-space: nowrap;
615
+ line-height: 1;
616
+ }
617
+
618
+ [data-orientation='vertical'] > .m_abeb9372 {
619
+ top: auto;
620
+ left: auto;
621
+ right: 0;
622
+ transform: translateY(50%);
623
+ }
package/styles.layer.css CHANGED
@@ -126,6 +126,19 @@
126
126
  padding: 0;
127
127
  }
128
128
 
129
+ .m_bb368c49 :where(text) {
130
+ font-size: var(--mantine-font-size-xs);
131
+ fill: var(--chart-text-color, var(--mantine-color-dimmed));
132
+ font-family: var(--mantine-font-family);
133
+ }
134
+ .m_bb368c49 :where(.recharts-brush-slide) {
135
+ fill: var(--mantine-primary-color-light);
136
+ fill-opacity: 1;
137
+ }
138
+ .m_bb368c49 :where(.recharts-brush-traveller) rect {
139
+ fill: var(--mantine-primary-color-filled);
140
+ }
141
+
129
142
  .m_a50f3e58 {
130
143
  display: block;
131
144
  width: 100%;
@@ -138,6 +151,15 @@
138
151
  outline: 0;
139
152
  }
140
153
 
154
+ .m_a50f3e58 :where(svg *) {
155
+ outline: 0;
156
+ }
157
+
158
+ .m_a50f3e58 svg:focus-visible {
159
+ outline: 2px solid var(--mantine-primary-color-filled);
160
+ outline-offset: calc(0.125rem * var(--mantine-scale));
161
+ }
162
+
141
163
  :where([data-mantine-color-scheme='light']) .m_a50f3e58 {
142
164
  --chart-grid-color: rgba(173, 181, 189, 0.6);
143
165
  --chart-cursor-fill: rgba(173, 181, 189, 0.15);
@@ -205,6 +227,11 @@
205
227
  overflow: visible;
206
228
  }
207
229
 
230
+ .m_a410e613 svg:focus-visible {
231
+ outline: 2px solid var(--mantine-primary-color-filled);
232
+ outline-offset: calc(0.125rem * var(--mantine-scale));
233
+ }
234
+
208
235
  .m_ddb0bfe3 {
209
236
  fill: var(--mantine-color-text);
210
237
  font-size: var(--mantine-font-size-sm);
@@ -225,6 +252,11 @@
225
252
  overflow: visible;
226
253
  }
227
254
 
255
+ .m_cd8943fd svg:focus-visible {
256
+ outline: 2px solid var(--mantine-primary-color-filled);
257
+ outline-offset: calc(0.125rem * var(--mantine-scale));
258
+ }
259
+
228
260
  :where([data-mantine-color-scheme='light']) .m_1f271cf7 {
229
261
  --chart-grid-color: rgba(173, 181, 189, 0.6);
230
262
  --chart-text-color: var(--mantine-color-gray-7);
@@ -240,10 +272,16 @@
240
272
  user-select: none;
241
273
  }
242
274
 
243
- .m_1f271cf7 :where(svg) {
275
+ .m_1f271cf7 :where(svg),
276
+ .m_1f271cf7 :where(svg *) {
244
277
  outline: 0;
245
278
  }
246
279
 
280
+ .m_1f271cf7 svg:focus-visible {
281
+ outline: 2px solid var(--mantine-primary-color-filled);
282
+ outline-offset: calc(0.125rem * var(--mantine-scale));
283
+ }
284
+
247
285
  .m_cf06f58c {
248
286
  height: 100%;
249
287
  width: 100%;
@@ -258,10 +296,16 @@
258
296
  --chart-cursor-color: var(--mantine-color-dark-4);
259
297
  }
260
298
 
261
- .m_cd2bd9e5 :where(svg) {
299
+ .m_cd2bd9e5 :where(svg),
300
+ .m_cd2bd9e5 :where(svg *) {
262
301
  outline: 0;
263
302
  }
264
303
 
304
+ .m_cd2bd9e5 svg:focus-visible {
305
+ outline: 2px solid var(--mantine-primary-color-filled);
306
+ outline-offset: calc(0.125rem * var(--mantine-scale));
307
+ }
308
+
265
309
  .m_6bcc3420 {
266
310
  padding: var(--mantine-spacing-md);
267
311
  box-shadow: var(--mantine-shadow-md);
@@ -291,6 +335,11 @@
291
335
  outline: 0;
292
336
  }
293
337
 
338
+ .m_80d531e7 svg:focus-visible {
339
+ outline: 2px solid var(--mantine-primary-color-filled);
340
+ outline-offset: calc(0.125rem * var(--mantine-scale));
341
+ }
342
+
294
343
  .m_2ef228c3 {
295
344
  display: block;
296
345
  width: fit-content;
@@ -405,4 +454,171 @@
405
454
  :where([data-mantine-color-scheme='dark']) .m_b42d2970 {
406
455
  --chart-link-color: var(--mantine-color-dark-5);
407
456
  }
457
+
458
+ .m_a73eff05 {
459
+ min-height: var(--chart-size, auto);
460
+ height: var(--chart-size, auto);
461
+ width: var(--chart-size, auto);
462
+ min-width: var(--chart-size, auto);
463
+ }
464
+
465
+ .m_a73eff05 :where(*) {
466
+ outline: 0;
467
+ }
468
+
469
+ .m_f1b033 {
470
+ display: flex;
471
+ align-items: center;
472
+ gap: var(--mantine-spacing-md);
473
+ width: 100%;
474
+ }
475
+
476
+ .m_f1b033[data-orientation='vertical'] {
477
+ flex-direction: column;
478
+ width: auto;
479
+ height: 100%;
480
+ }
481
+
482
+ .m_1ce939c3 {
483
+ font-size: var(--mantine-font-size-sm);
484
+ font-weight: var(--mantine-font-weight-medium);
485
+ white-space: nowrap;
486
+ color: var(--mantine-color-text);
487
+ }
488
+
489
+ .m_dcd57f19 {
490
+ position: relative;
491
+ flex: 1;
492
+ padding-top: calc(var(--mantine-font-size-xs) + calc(0.25rem * var(--mantine-scale)));
493
+ padding-bottom: calc(var(--mantine-font-size-xs) + calc(0.25rem * var(--mantine-scale)));
494
+ }
495
+
496
+ .m_dcd57f19[data-orientation='vertical'] {
497
+ flex: 1;
498
+ height: 100%;
499
+ padding-top: 0;
500
+ padding-bottom: 0;
501
+ padding-left: calc(var(--mantine-font-size-xs) + 40px);
502
+ padding-right: calc(var(--mantine-font-size-xs) + 40px);
503
+ }
504
+
505
+ .m_1d61ac1a {
506
+ position: relative;
507
+ height: var(--bullet-size);
508
+ border-radius: var(--mantine-radius-sm);
509
+ overflow: hidden;
510
+ }
511
+
512
+ [data-orientation='vertical'] > .m_1d61ac1a {
513
+ width: var(--bullet-size);
514
+ height: 100%;
515
+ }
516
+
517
+ .m_1d3df40c {
518
+ position: absolute;
519
+ top: 0;
520
+ left: 0;
521
+ height: 100%;
522
+ border-radius: var(--mantine-radius-sm);
523
+ }
524
+
525
+ [data-orientation='vertical'] > .m_1d61ac1a > .m_1d3df40c {
526
+ top: auto;
527
+ left: 0;
528
+ width: 100%;
529
+ height: auto;
530
+ border-radius: var(--mantine-radius-sm);
531
+ }
532
+
533
+ .m_8499ea2 {
534
+ position: absolute;
535
+ top: 50%;
536
+ left: 0;
537
+ height: var(--bullet-bar-size);
538
+ transform: translateY(-50%);
539
+ border-radius: 0 var(--mantine-radius-xs) var(--mantine-radius-xs) 0;
540
+ z-index: 1;
541
+ }
542
+
543
+ [data-orientation='vertical'] > .m_1d61ac1a > .m_8499ea2 {
544
+ top: auto;
545
+ left: 50%;
546
+ width: var(--bullet-bar-size);
547
+ height: auto;
548
+ transform: translateX(-50%);
549
+ border-radius: var(--mantine-radius-xs) var(--mantine-radius-xs) 0 0;
550
+ }
551
+
552
+ .m_8dec10a2 {
553
+ position: absolute;
554
+ top: 50%;
555
+ transform: translateY(-50%) translateX(-50%);
556
+ z-index: 2;
557
+ border-radius: var(--mantine-radius-xs);
558
+ }
559
+
560
+ :where([data-mantine-color-scheme='light']) .m_8dec10a2 {
561
+ background-color: var(--mantine-color-dark-filled);
562
+ }
563
+
564
+ :where([data-mantine-color-scheme='dark']) .m_8dec10a2 {
565
+ background-color: var(--mantine-color-white);
566
+ }
567
+
568
+ [data-orientation='vertical'] > .m_1d61ac1a > .m_8dec10a2 {
569
+ top: auto;
570
+ left: 50%;
571
+ transform: translateX(-50%) translateY(50%);
572
+ }
573
+
574
+ .m_18314248 {
575
+ position: absolute;
576
+ top: 0;
577
+ transform: translateX(-50%);
578
+ font-size: var(--mantine-font-size-xs);
579
+ color: var(--mantine-color-dimmed);
580
+ white-space: nowrap;
581
+ line-height: 1;
582
+ }
583
+
584
+ [data-orientation='vertical'] > .m_18314248 {
585
+ top: auto;
586
+ left: auto;
587
+ right: 0;
588
+ transform: translateY(50%);
589
+ }
590
+
591
+ .m_73d6c572 {
592
+ position: absolute;
593
+ bottom: 0;
594
+ transform: translateX(-50%);
595
+ font-size: var(--mantine-font-size-xs);
596
+ font-weight: var(--mantine-font-weight-bold);
597
+ color: var(--mantine-color-text);
598
+ white-space: nowrap;
599
+ line-height: 1;
600
+ }
601
+
602
+ [data-orientation='vertical'] > .m_73d6c572 {
603
+ bottom: auto;
604
+ left: 0;
605
+ transform: translateY(50%);
606
+ }
607
+
608
+ .m_abeb9372 {
609
+ position: absolute;
610
+ top: 0;
611
+ transform: translateX(-50%);
612
+ font-size: var(--mantine-font-size-xs);
613
+ color: var(--mantine-color-dimmed);
614
+ white-space: nowrap;
615
+ line-height: 1;
616
+ }
617
+
618
+ [data-orientation='vertical'] > .m_abeb9372 {
619
+ top: auto;
620
+ left: auto;
621
+ right: 0;
622
+ transform: translateY(50%);
623
+ }
408
624
  }