@entropix/data 1.0.0 → 1.0.1

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 (49) hide show
  1. package/dist/area-chart.cjs +14 -0
  2. package/dist/area-chart.css +144 -0
  3. package/dist/area-chart.d.cts +19 -0
  4. package/dist/area-chart.d.ts +19 -0
  5. package/dist/area-chart.js +5 -0
  6. package/dist/bar-chart.cjs +14 -0
  7. package/dist/bar-chart.css +144 -0
  8. package/dist/bar-chart.d.cts +18 -0
  9. package/dist/bar-chart.d.ts +18 -0
  10. package/dist/bar-chart.js +5 -0
  11. package/dist/chunk-42HKJHUY.js +96 -0
  12. package/dist/chunk-4WXLJDQU.js +74 -0
  13. package/dist/chunk-6YAOO76S.cjs +142 -0
  14. package/dist/chunk-CMAQ7DZD.js +135 -0
  15. package/dist/chunk-FQACLZYR.js +137 -0
  16. package/dist/chunk-GCZSXJAA.cjs +77 -0
  17. package/dist/chunk-K6ZRQYSZ.cjs +131 -0
  18. package/dist/chunk-QBI5NOHT.cjs +126 -0
  19. package/dist/chunk-SDCNTA7E.cjs +275 -0
  20. package/dist/chunk-VCSKHJLZ.js +124 -0
  21. package/dist/chunk-VGT2QF7D.cjs +98 -0
  22. package/dist/chunk-WOVSQALY.cjs +137 -0
  23. package/dist/chunk-X7GZD7KZ.js +129 -0
  24. package/dist/chunk-YINCJQN6.js +271 -0
  25. package/dist/data-table.cjs +20 -0
  26. package/dist/data-table.css +227 -0
  27. package/dist/data-table.d.cts +20 -0
  28. package/dist/data-table.d.ts +20 -0
  29. package/dist/data-table.js +3 -0
  30. package/dist/index.cjs +35 -913
  31. package/dist/index.d.cts +7 -75
  32. package/dist/index.d.ts +7 -75
  33. package/dist/index.js +7 -910
  34. package/dist/line-chart.cjs +14 -0
  35. package/dist/line-chart.css +144 -0
  36. package/dist/line-chart.d.cts +19 -0
  37. package/dist/line-chart.d.ts +19 -0
  38. package/dist/line-chart.js +5 -0
  39. package/dist/pie-chart.cjs +13 -0
  40. package/dist/pie-chart.css +144 -0
  41. package/dist/pie-chart.d.cts +15 -0
  42. package/dist/pie-chart.d.ts +15 -0
  43. package/dist/pie-chart.js +4 -0
  44. package/dist/styles/chart.css +1 -193
  45. package/dist/styles/data-table.css +1 -304
  46. package/package.json +54 -3
  47. package/dist/index.cjs.map +0 -1
  48. package/dist/index.css.map +0 -1
  49. package/dist/index.js.map +0 -1
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ var chunkQBI5NOHT_cjs = require('./chunk-QBI5NOHT.cjs');
4
+ require('./chunk-GCZSXJAA.cjs');
5
+ require('./chunk-6YAOO76S.cjs');
6
+
7
+
8
+
9
+ Object.defineProperty(exports, "LineChart", {
10
+ enumerable: true,
11
+ get: function () { return chunkQBI5NOHT_cjs.LineChart; }
12
+ });
13
+ //# sourceMappingURL=line-chart.cjs.map
14
+ //# sourceMappingURL=line-chart.cjs.map
@@ -0,0 +1,144 @@
1
+ /* src/styles/chart.css */
2
+ :root {
3
+ --chart-bg: var(--entropix-color-bg-primary, #ffffff);
4
+ --chart-border-color: var(--entropix-color-border-default, #e5e7eb);
5
+ --chart-grid-color: var(--entropix-color-border-subtle, #f3f4f6);
6
+ --chart-text-color: var(--entropix-color-text-secondary, #6b7280);
7
+ --chart-tooltip-bg: var(--entropix-color-bg-inverse, #1f2937);
8
+ --chart-tooltip-text: var(--entropix-color-text-inverse, #ffffff);
9
+ --chart-font-size: var(--entropix-font-size-xs, 0.75rem);
10
+ --chart-series-1: var(--entropix-color-action-primary-default, #3b82f6);
11
+ --chart-series-2: var(--entropix-color-chart-2, #ef4444);
12
+ --chart-series-3: var(--entropix-color-chart-3, #22c55e);
13
+ --chart-series-4: var(--entropix-color-chart-4, #f59e0b);
14
+ --chart-series-5: var(--entropix-color-chart-5, #a855f7);
15
+ --chart-series-6: var(--entropix-color-chart-6, #06b6d4);
16
+ --chart-series-7: var(--entropix-color-chart-7, #f97316);
17
+ --chart-series-8: var(--entropix-color-chart-8, #ec4899);
18
+ }
19
+ .entropix-chart {
20
+ position: relative;
21
+ width: 100%;
22
+ background: var(--chart-bg);
23
+ font-family: var(--entropix-font-family-sans, system-ui, sans-serif);
24
+ font-size: var(--chart-font-size);
25
+ color: var(--chart-text-color);
26
+ }
27
+ .entropix-chart__svg {
28
+ display: block;
29
+ overflow: visible;
30
+ }
31
+ .entropix-chart__axis-text {
32
+ fill: var(--chart-text-color);
33
+ font-size: var(--chart-font-size);
34
+ font-family: inherit;
35
+ user-select: none;
36
+ }
37
+ .entropix-chart__grid-line {
38
+ stroke: var(--chart-grid-color);
39
+ stroke-width: 1;
40
+ shape-rendering: crispEdges;
41
+ }
42
+ .entropix-chart__tooltip {
43
+ position: absolute;
44
+ background: var(--chart-tooltip-bg);
45
+ color: var(--chart-tooltip-text);
46
+ padding: 6px 10px;
47
+ border-radius: 6px;
48
+ font-size: var(--chart-font-size);
49
+ line-height: 1.4;
50
+ white-space: nowrap;
51
+ pointer-events: none;
52
+ z-index: 10;
53
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
54
+ opacity: 0;
55
+ transition: opacity 0.15s ease-in-out;
56
+ }
57
+ .entropix-chart__tooltip--visible {
58
+ opacity: 1;
59
+ }
60
+ .entropix-chart__tooltip-row {
61
+ display: flex;
62
+ align-items: center;
63
+ gap: 6px;
64
+ }
65
+ .entropix-chart__tooltip-swatch {
66
+ display: inline-block;
67
+ width: 8px;
68
+ height: 8px;
69
+ border-radius: 50%;
70
+ flex-shrink: 0;
71
+ }
72
+ .entropix-chart__legend {
73
+ display: flex;
74
+ flex-wrap: wrap;
75
+ gap: 12px;
76
+ padding: 8px 0 0;
77
+ justify-content: center;
78
+ }
79
+ .entropix-chart__legend-item {
80
+ display: inline-flex;
81
+ align-items: center;
82
+ gap: 6px;
83
+ cursor: pointer;
84
+ user-select: none;
85
+ font-size: var(--chart-font-size);
86
+ color: var(--chart-text-color);
87
+ transition: opacity 0.15s ease-in-out;
88
+ }
89
+ .entropix-chart__legend-item--inactive {
90
+ opacity: 0.4;
91
+ }
92
+ .entropix-chart__legend-swatch {
93
+ display: inline-block;
94
+ width: 10px;
95
+ height: 10px;
96
+ border-radius: 50%;
97
+ flex-shrink: 0;
98
+ }
99
+ .entropix-chart__bar {
100
+ transition: opacity 0.15s ease-in-out;
101
+ }
102
+ .entropix-chart__bar:hover {
103
+ opacity: 0.8;
104
+ }
105
+ .entropix-chart__line {
106
+ fill: none;
107
+ stroke-width: 2;
108
+ stroke-linejoin: round;
109
+ stroke-linecap: round;
110
+ }
111
+ .entropix-chart__area {
112
+ stroke: none;
113
+ stroke-linejoin: round;
114
+ }
115
+ .entropix-chart__point {
116
+ stroke: var(--chart-bg);
117
+ stroke-width: 2;
118
+ transition: r 0.15s ease-in-out;
119
+ }
120
+ .entropix-chart__point:hover {
121
+ r: 5;
122
+ }
123
+ .entropix-chart__arc {
124
+ transition: opacity 0.15s ease-in-out, transform 0.15s ease-in-out;
125
+ transform-origin: center;
126
+ }
127
+ .entropix-chart__arc:hover {
128
+ opacity: 0.85;
129
+ transform: scale(1.03);
130
+ }
131
+ @container (max-width: 400px) {
132
+ .entropix-chart {
133
+ font-size: 0.625rem;
134
+ }
135
+ }
136
+ @media (max-width: 480px) {
137
+ .entropix-chart {
138
+ font-size: 0.625rem;
139
+ }
140
+ .entropix-chart__legend {
141
+ gap: 8px;
142
+ }
143
+ }
144
+ /*# sourceMappingURL=line-chart.css.map */
@@ -0,0 +1,19 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ChartData, AxisConfig } from '@entropix/core';
3
+
4
+ interface LineChartProps {
5
+ data: ChartData;
6
+ height?: number;
7
+ colors?: string[];
8
+ curved?: boolean;
9
+ showPoints?: boolean;
10
+ showGrid?: boolean;
11
+ showTooltip?: boolean;
12
+ showLegend?: boolean;
13
+ xAxis?: AxisConfig;
14
+ yAxis?: AxisConfig;
15
+ className?: string;
16
+ }
17
+ declare function LineChart({ data, height, colors, curved, showPoints, showGrid, showTooltip, showLegend, xAxis, yAxis, className, }: LineChartProps): react_jsx_runtime.JSX.Element;
18
+
19
+ export { LineChart, type LineChartProps };
@@ -0,0 +1,19 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ChartData, AxisConfig } from '@entropix/core';
3
+
4
+ interface LineChartProps {
5
+ data: ChartData;
6
+ height?: number;
7
+ colors?: string[];
8
+ curved?: boolean;
9
+ showPoints?: boolean;
10
+ showGrid?: boolean;
11
+ showTooltip?: boolean;
12
+ showLegend?: boolean;
13
+ xAxis?: AxisConfig;
14
+ yAxis?: AxisConfig;
15
+ className?: string;
16
+ }
17
+ declare function LineChart({ data, height, colors, curved, showPoints, showGrid, showTooltip, showLegend, xAxis, yAxis, className, }: LineChartProps): react_jsx_runtime.JSX.Element;
18
+
19
+ export { LineChart, type LineChartProps };
@@ -0,0 +1,5 @@
1
+ export { LineChart } from './chunk-VCSKHJLZ.js';
2
+ import './chunk-4WXLJDQU.js';
3
+ import './chunk-FQACLZYR.js';
4
+ //# sourceMappingURL=line-chart.js.map
5
+ //# sourceMappingURL=line-chart.js.map
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var chunkVGT2QF7D_cjs = require('./chunk-VGT2QF7D.cjs');
4
+ require('./chunk-6YAOO76S.cjs');
5
+
6
+
7
+
8
+ Object.defineProperty(exports, "PieChart", {
9
+ enumerable: true,
10
+ get: function () { return chunkVGT2QF7D_cjs.PieChart; }
11
+ });
12
+ //# sourceMappingURL=pie-chart.cjs.map
13
+ //# sourceMappingURL=pie-chart.cjs.map
@@ -0,0 +1,144 @@
1
+ /* src/styles/chart.css */
2
+ :root {
3
+ --chart-bg: var(--entropix-color-bg-primary, #ffffff);
4
+ --chart-border-color: var(--entropix-color-border-default, #e5e7eb);
5
+ --chart-grid-color: var(--entropix-color-border-subtle, #f3f4f6);
6
+ --chart-text-color: var(--entropix-color-text-secondary, #6b7280);
7
+ --chart-tooltip-bg: var(--entropix-color-bg-inverse, #1f2937);
8
+ --chart-tooltip-text: var(--entropix-color-text-inverse, #ffffff);
9
+ --chart-font-size: var(--entropix-font-size-xs, 0.75rem);
10
+ --chart-series-1: var(--entropix-color-action-primary-default, #3b82f6);
11
+ --chart-series-2: var(--entropix-color-chart-2, #ef4444);
12
+ --chart-series-3: var(--entropix-color-chart-3, #22c55e);
13
+ --chart-series-4: var(--entropix-color-chart-4, #f59e0b);
14
+ --chart-series-5: var(--entropix-color-chart-5, #a855f7);
15
+ --chart-series-6: var(--entropix-color-chart-6, #06b6d4);
16
+ --chart-series-7: var(--entropix-color-chart-7, #f97316);
17
+ --chart-series-8: var(--entropix-color-chart-8, #ec4899);
18
+ }
19
+ .entropix-chart {
20
+ position: relative;
21
+ width: 100%;
22
+ background: var(--chart-bg);
23
+ font-family: var(--entropix-font-family-sans, system-ui, sans-serif);
24
+ font-size: var(--chart-font-size);
25
+ color: var(--chart-text-color);
26
+ }
27
+ .entropix-chart__svg {
28
+ display: block;
29
+ overflow: visible;
30
+ }
31
+ .entropix-chart__axis-text {
32
+ fill: var(--chart-text-color);
33
+ font-size: var(--chart-font-size);
34
+ font-family: inherit;
35
+ user-select: none;
36
+ }
37
+ .entropix-chart__grid-line {
38
+ stroke: var(--chart-grid-color);
39
+ stroke-width: 1;
40
+ shape-rendering: crispEdges;
41
+ }
42
+ .entropix-chart__tooltip {
43
+ position: absolute;
44
+ background: var(--chart-tooltip-bg);
45
+ color: var(--chart-tooltip-text);
46
+ padding: 6px 10px;
47
+ border-radius: 6px;
48
+ font-size: var(--chart-font-size);
49
+ line-height: 1.4;
50
+ white-space: nowrap;
51
+ pointer-events: none;
52
+ z-index: 10;
53
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
54
+ opacity: 0;
55
+ transition: opacity 0.15s ease-in-out;
56
+ }
57
+ .entropix-chart__tooltip--visible {
58
+ opacity: 1;
59
+ }
60
+ .entropix-chart__tooltip-row {
61
+ display: flex;
62
+ align-items: center;
63
+ gap: 6px;
64
+ }
65
+ .entropix-chart__tooltip-swatch {
66
+ display: inline-block;
67
+ width: 8px;
68
+ height: 8px;
69
+ border-radius: 50%;
70
+ flex-shrink: 0;
71
+ }
72
+ .entropix-chart__legend {
73
+ display: flex;
74
+ flex-wrap: wrap;
75
+ gap: 12px;
76
+ padding: 8px 0 0;
77
+ justify-content: center;
78
+ }
79
+ .entropix-chart__legend-item {
80
+ display: inline-flex;
81
+ align-items: center;
82
+ gap: 6px;
83
+ cursor: pointer;
84
+ user-select: none;
85
+ font-size: var(--chart-font-size);
86
+ color: var(--chart-text-color);
87
+ transition: opacity 0.15s ease-in-out;
88
+ }
89
+ .entropix-chart__legend-item--inactive {
90
+ opacity: 0.4;
91
+ }
92
+ .entropix-chart__legend-swatch {
93
+ display: inline-block;
94
+ width: 10px;
95
+ height: 10px;
96
+ border-radius: 50%;
97
+ flex-shrink: 0;
98
+ }
99
+ .entropix-chart__bar {
100
+ transition: opacity 0.15s ease-in-out;
101
+ }
102
+ .entropix-chart__bar:hover {
103
+ opacity: 0.8;
104
+ }
105
+ .entropix-chart__line {
106
+ fill: none;
107
+ stroke-width: 2;
108
+ stroke-linejoin: round;
109
+ stroke-linecap: round;
110
+ }
111
+ .entropix-chart__area {
112
+ stroke: none;
113
+ stroke-linejoin: round;
114
+ }
115
+ .entropix-chart__point {
116
+ stroke: var(--chart-bg);
117
+ stroke-width: 2;
118
+ transition: r 0.15s ease-in-out;
119
+ }
120
+ .entropix-chart__point:hover {
121
+ r: 5;
122
+ }
123
+ .entropix-chart__arc {
124
+ transition: opacity 0.15s ease-in-out, transform 0.15s ease-in-out;
125
+ transform-origin: center;
126
+ }
127
+ .entropix-chart__arc:hover {
128
+ opacity: 0.85;
129
+ transform: scale(1.03);
130
+ }
131
+ @container (max-width: 400px) {
132
+ .entropix-chart {
133
+ font-size: 0.625rem;
134
+ }
135
+ }
136
+ @media (max-width: 480px) {
137
+ .entropix-chart {
138
+ font-size: 0.625rem;
139
+ }
140
+ .entropix-chart__legend {
141
+ gap: 8px;
142
+ }
143
+ }
144
+ /*# sourceMappingURL=pie-chart.css.map */
@@ -0,0 +1,15 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ChartDataPoint } from '@entropix/core';
3
+
4
+ interface PieChartProps {
5
+ data: ChartDataPoint[];
6
+ height?: number;
7
+ colors?: string[];
8
+ innerRadius?: number;
9
+ showTooltip?: boolean;
10
+ showLegend?: boolean;
11
+ className?: string;
12
+ }
13
+ declare function PieChart({ data, height, colors, innerRadius, showTooltip, showLegend, className, }: PieChartProps): react_jsx_runtime.JSX.Element;
14
+
15
+ export { PieChart, type PieChartProps };
@@ -0,0 +1,15 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ChartDataPoint } from '@entropix/core';
3
+
4
+ interface PieChartProps {
5
+ data: ChartDataPoint[];
6
+ height?: number;
7
+ colors?: string[];
8
+ innerRadius?: number;
9
+ showTooltip?: boolean;
10
+ showLegend?: boolean;
11
+ className?: string;
12
+ }
13
+ declare function PieChart({ data, height, colors, innerRadius, showTooltip, showLegend, className, }: PieChartProps): react_jsx_runtime.JSX.Element;
14
+
15
+ export { PieChart, type PieChartProps };
@@ -0,0 +1,4 @@
1
+ export { PieChart } from './chunk-42HKJHUY.js';
2
+ import './chunk-FQACLZYR.js';
3
+ //# sourceMappingURL=pie-chart.js.map
4
+ //# sourceMappingURL=pie-chart.js.map
@@ -1,193 +1 @@
1
- /* ─── Chart Component Tokens ─────────────────────────────────────────────── */
2
-
3
- :root {
4
- --chart-bg: var(--entropix-color-bg-primary, #ffffff);
5
- --chart-border-color: var(--entropix-color-border-default, #e5e7eb);
6
- --chart-grid-color: var(--entropix-color-border-subtle, #f3f4f6);
7
- --chart-text-color: var(--entropix-color-text-secondary, #6b7280);
8
- --chart-tooltip-bg: var(--entropix-color-bg-inverse, #1f2937);
9
- --chart-tooltip-text: var(--entropix-color-text-inverse, #ffffff);
10
- --chart-font-size: var(--entropix-font-size-xs, 0.75rem);
11
- --chart-series-1: var(--entropix-color-action-primary-default, #3b82f6);
12
- --chart-series-2: var(--entropix-color-chart-2, #ef4444);
13
- --chart-series-3: var(--entropix-color-chart-3, #22c55e);
14
- --chart-series-4: var(--entropix-color-chart-4, #f59e0b);
15
- --chart-series-5: var(--entropix-color-chart-5, #a855f7);
16
- --chart-series-6: var(--entropix-color-chart-6, #06b6d4);
17
- --chart-series-7: var(--entropix-color-chart-7, #f97316);
18
- --chart-series-8: var(--entropix-color-chart-8, #ec4899);
19
- }
20
-
21
- /* ─── Chart Wrapper ──────────────────────────────────────────────────────── */
22
-
23
- .entropix-chart {
24
- position: relative;
25
- width: 100%;
26
- background: var(--chart-bg);
27
- font-family: var(--entropix-font-family-sans, system-ui, sans-serif);
28
- font-size: var(--chart-font-size);
29
- color: var(--chart-text-color);
30
- }
31
-
32
- /* ─── SVG Canvas ─────────────────────────────────────────────────────────── */
33
-
34
- .entropix-chart__svg {
35
- display: block;
36
- overflow: visible;
37
- }
38
-
39
- /* ─── Axis Text ──────────────────────────────────────────────────────────── */
40
-
41
- .entropix-chart__axis-text {
42
- fill: var(--chart-text-color);
43
- font-size: var(--chart-font-size);
44
- font-family: inherit;
45
- user-select: none;
46
- }
47
-
48
- /* ─── Grid Lines ─────────────────────────────────────────────────────────── */
49
-
50
- .entropix-chart__grid-line {
51
- stroke: var(--chart-grid-color);
52
- stroke-width: 1;
53
- shape-rendering: crispEdges;
54
- }
55
-
56
- /* ─── Tooltip ────────────────────────────────────────────────────────────── */
57
-
58
- .entropix-chart__tooltip {
59
- position: absolute;
60
- background: var(--chart-tooltip-bg);
61
- color: var(--chart-tooltip-text);
62
- padding: 6px 10px;
63
- border-radius: 6px;
64
- font-size: var(--chart-font-size);
65
- line-height: 1.4;
66
- white-space: nowrap;
67
- pointer-events: none;
68
- z-index: 10;
69
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
70
- opacity: 0;
71
- transition: opacity 0.15s ease-in-out;
72
- }
73
-
74
- .entropix-chart__tooltip--visible {
75
- opacity: 1;
76
- }
77
-
78
- .entropix-chart__tooltip-row {
79
- display: flex;
80
- align-items: center;
81
- gap: 6px;
82
- }
83
-
84
- .entropix-chart__tooltip-swatch {
85
- display: inline-block;
86
- width: 8px;
87
- height: 8px;
88
- border-radius: 50%;
89
- flex-shrink: 0;
90
- }
91
-
92
- /* ─── Legend ──────────────────────────────────────────────────────────────── */
93
-
94
- .entropix-chart__legend {
95
- display: flex;
96
- flex-wrap: wrap;
97
- gap: 12px;
98
- padding: 8px 0 0;
99
- justify-content: center;
100
- }
101
-
102
- .entropix-chart__legend-item {
103
- display: inline-flex;
104
- align-items: center;
105
- gap: 6px;
106
- cursor: pointer;
107
- user-select: none;
108
- font-size: var(--chart-font-size);
109
- color: var(--chart-text-color);
110
- transition: opacity 0.15s ease-in-out;
111
- }
112
-
113
- .entropix-chart__legend-item--inactive {
114
- opacity: 0.4;
115
- }
116
-
117
- .entropix-chart__legend-swatch {
118
- display: inline-block;
119
- width: 10px;
120
- height: 10px;
121
- border-radius: 50%;
122
- flex-shrink: 0;
123
- }
124
-
125
- /* ─── Bar ─────────────────────────────────────────────────────────────────── */
126
-
127
- .entropix-chart__bar {
128
- transition: opacity 0.15s ease-in-out;
129
- }
130
-
131
- .entropix-chart__bar:hover {
132
- opacity: 0.8;
133
- }
134
-
135
- /* ─── Line ────────────────────────────────────────────────────────────────── */
136
-
137
- .entropix-chart__line {
138
- fill: none;
139
- stroke-width: 2;
140
- stroke-linejoin: round;
141
- stroke-linecap: round;
142
- }
143
-
144
- /* ─── Area ────────────────────────────────────────────────────────────────── */
145
-
146
- .entropix-chart__area {
147
- stroke: none;
148
- stroke-linejoin: round;
149
- }
150
-
151
- /* ─── Data Point ─────────────────────────────────────────────────────────── */
152
-
153
- .entropix-chart__point {
154
- stroke: var(--chart-bg);
155
- stroke-width: 2;
156
- transition: r 0.15s ease-in-out;
157
- }
158
-
159
- .entropix-chart__point:hover {
160
- r: 5;
161
- }
162
-
163
- /* ─── Arc / Pie ──────────────────────────────────────────────────────────── */
164
-
165
- .entropix-chart__arc {
166
- transition:
167
- opacity 0.15s ease-in-out,
168
- transform 0.15s ease-in-out;
169
- transform-origin: center;
170
- }
171
-
172
- .entropix-chart__arc:hover {
173
- opacity: 0.85;
174
- transform: scale(1.03);
175
- }
176
-
177
- /* ─── Responsive ─────────────────────────────────────────────────────────── */
178
-
179
- @container (max-width: 400px) {
180
- .entropix-chart {
181
- font-size: 0.625rem;
182
- }
183
- }
184
-
185
- @media (max-width: 480px) {
186
- .entropix-chart {
187
- font-size: 0.625rem;
188
- }
189
-
190
- .entropix-chart__legend {
191
- gap: 8px;
192
- }
193
- }
1
+ :root{--chart-bg:var(--entropix-color-bg-primary,#fff);--chart-border-color:var(--entropix-color-border-default,#e5e7eb);--chart-grid-color:var(--entropix-color-border-subtle,#f3f4f6);--chart-text-color:var(--entropix-color-text-secondary,#6b7280);--chart-tooltip-bg:var(--entropix-color-bg-inverse,#1f2937);--chart-tooltip-text:var(--entropix-color-text-inverse,#fff);--chart-font-size:var(--entropix-font-size-xs,.75rem);--chart-series-1:var(--entropix-color-action-primary-default,#3b82f6);--chart-series-2:var(--entropix-color-chart-2,#ef4444);--chart-series-3:var(--entropix-color-chart-3,#22c55e);--chart-series-4:var(--entropix-color-chart-4,#f59e0b);--chart-series-5:var(--entropix-color-chart-5,#a855f7);--chart-series-6:var(--entropix-color-chart-6,#06b6d4);--chart-series-7:var(--entropix-color-chart-7,#f97316);--chart-series-8:var(--entropix-color-chart-8,#ec4899)}.entropix-chart{background:var(--chart-bg);width:100%;font-family:var(--entropix-font-family-sans,system-ui, sans-serif);font-size:var(--chart-font-size);color:var(--chart-text-color);position:relative}.entropix-chart__svg{display:block;overflow:visible}.entropix-chart__axis-text{fill:var(--chart-text-color);font-size:var(--chart-font-size);user-select:none;font-family:inherit}.entropix-chart__grid-line{stroke:var(--chart-grid-color);stroke-width:1px;shape-rendering:crispedges}.entropix-chart__tooltip{background:var(--chart-tooltip-bg);color:var(--chart-tooltip-text);font-size:var(--chart-font-size);white-space:nowrap;pointer-events:none;z-index:10;opacity:0;border-radius:6px;padding:6px 10px;line-height:1.4;transition:opacity .15s ease-in-out;position:absolute;box-shadow:0 2px 8px #00000026}.entropix-chart__tooltip--visible{opacity:1}.entropix-chart__tooltip-row{align-items:center;gap:6px;display:flex}.entropix-chart__tooltip-swatch{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.entropix-chart__legend{flex-wrap:wrap;justify-content:center;gap:12px;padding:8px 0 0;display:flex}.entropix-chart__legend-item{cursor:pointer;user-select:none;font-size:var(--chart-font-size);color:var(--chart-text-color);align-items:center;gap:6px;transition:opacity .15s ease-in-out;display:inline-flex}.entropix-chart__legend-item--inactive{opacity:.4}.entropix-chart__legend-swatch{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.entropix-chart__bar{transition:opacity .15s ease-in-out}.entropix-chart__bar:hover{opacity:.8}.entropix-chart__line{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.entropix-chart__area{stroke:none;stroke-linejoin:round}.entropix-chart__point{stroke:var(--chart-bg);stroke-width:2px;transition:r .15s ease-in-out}.entropix-chart__point:hover{r:5}.entropix-chart__arc{transform-origin:50%;transition:opacity .15s ease-in-out,transform .15s ease-in-out}.entropix-chart__arc:hover{opacity:.85;transform:scale(1.03)}@container (width<=400px){.entropix-chart{font-size:.625rem}}@media (width<=480px){.entropix-chart{font-size:.625rem}.entropix-chart__legend{gap:8px}}