minerva-design 1.0.2 → 1.1.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 (165) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +21 -19
  3. package/dist/charts/core.cjs +1 -0
  4. package/dist/charts/core.d.cts +3 -0
  5. package/dist/charts/core.d.ts +3 -0
  6. package/dist/charts/core.js +3 -0
  7. package/dist/charts/engine/axis.cjs +2 -0
  8. package/dist/charts/engine/axis.cjs.map +1 -0
  9. package/dist/charts/engine/axis.d.cts +13 -0
  10. package/dist/charts/engine/axis.d.ts +13 -0
  11. package/dist/charts/engine/axis.js +38 -0
  12. package/dist/charts/engine/axis.js.map +1 -0
  13. package/dist/charts/engine/chart.cjs +3 -0
  14. package/dist/charts/engine/chart.cjs.map +1 -0
  15. package/dist/charts/engine/chart.d.cts +6 -0
  16. package/dist/charts/engine/chart.d.ts +6 -0
  17. package/dist/charts/engine/chart.js +624 -0
  18. package/dist/charts/engine/chart.js.map +1 -0
  19. package/dist/charts/engine/color.cjs +2 -0
  20. package/dist/charts/engine/color.cjs.map +1 -0
  21. package/dist/charts/engine/color.d.cts +23 -0
  22. package/dist/charts/engine/color.d.ts +23 -0
  23. package/dist/charts/engine/color.js +95 -0
  24. package/dist/charts/engine/color.js.map +1 -0
  25. package/dist/charts/engine/data.cjs +2 -0
  26. package/dist/charts/engine/data.cjs.map +1 -0
  27. package/dist/charts/engine/data.d.cts +29 -0
  28. package/dist/charts/engine/data.d.ts +29 -0
  29. package/dist/charts/engine/data.js +104 -0
  30. package/dist/charts/engine/data.js.map +1 -0
  31. package/dist/charts/engine/decimate.cjs +2 -0
  32. package/dist/charts/engine/decimate.cjs.map +1 -0
  33. package/dist/charts/engine/decimate.d.cts +13 -0
  34. package/dist/charts/engine/decimate.d.ts +13 -0
  35. package/dist/charts/engine/decimate.js +28 -0
  36. package/dist/charts/engine/decimate.js.map +1 -0
  37. package/dist/charts/engine/dom.cjs +2 -0
  38. package/dist/charts/engine/dom.cjs.map +1 -0
  39. package/dist/charts/engine/dom.d.cts +21 -0
  40. package/dist/charts/engine/dom.d.ts +21 -0
  41. package/dist/charts/engine/dom.js +125 -0
  42. package/dist/charts/engine/dom.js.map +1 -0
  43. package/dist/charts/engine/format.cjs +2 -0
  44. package/dist/charts/engine/format.cjs.map +1 -0
  45. package/dist/charts/engine/format.d.cts +9 -0
  46. package/dist/charts/engine/format.d.ts +9 -0
  47. package/dist/charts/engine/format.js +34 -0
  48. package/dist/charts/engine/format.js.map +1 -0
  49. package/dist/charts/engine/items.cjs +2 -0
  50. package/dist/charts/engine/items.cjs.map +1 -0
  51. package/dist/charts/engine/items.d.cts +8 -0
  52. package/dist/charts/engine/items.d.ts +8 -0
  53. package/dist/charts/engine/items.js +91 -0
  54. package/dist/charts/engine/items.js.map +1 -0
  55. package/dist/charts/engine/layout.cjs +2 -0
  56. package/dist/charts/engine/layout.cjs.map +1 -0
  57. package/dist/charts/engine/layout.d.cts +37 -0
  58. package/dist/charts/engine/layout.d.ts +37 -0
  59. package/dist/charts/engine/layout.js +26 -0
  60. package/dist/charts/engine/layout.js.map +1 -0
  61. package/dist/charts/engine/model.cjs +2 -0
  62. package/dist/charts/engine/model.cjs.map +1 -0
  63. package/dist/charts/engine/model.d.cts +74 -0
  64. package/dist/charts/engine/model.d.ts +74 -0
  65. package/dist/charts/engine/model.js +175 -0
  66. package/dist/charts/engine/model.js.map +1 -0
  67. package/dist/charts/engine/overlay.cjs +2 -0
  68. package/dist/charts/engine/overlay.cjs.map +1 -0
  69. package/dist/charts/engine/overlay.d.cts +62 -0
  70. package/dist/charts/engine/overlay.d.ts +62 -0
  71. package/dist/charts/engine/overlay.js +123 -0
  72. package/dist/charts/engine/overlay.js.map +1 -0
  73. package/dist/charts/engine/renderers/canvas2d.cjs +2 -0
  74. package/dist/charts/engine/renderers/canvas2d.cjs.map +1 -0
  75. package/dist/charts/engine/renderers/canvas2d.d.cts +4 -0
  76. package/dist/charts/engine/renderers/canvas2d.d.ts +4 -0
  77. package/dist/charts/engine/renderers/canvas2d.js +156 -0
  78. package/dist/charts/engine/renderers/canvas2d.js.map +1 -0
  79. package/dist/charts/engine/renderers/detect.cjs +2 -0
  80. package/dist/charts/engine/renderers/detect.cjs.map +1 -0
  81. package/dist/charts/engine/renderers/detect.d.cts +12 -0
  82. package/dist/charts/engine/renderers/detect.d.ts +12 -0
  83. package/dist/charts/engine/renderers/detect.js +33 -0
  84. package/dist/charts/engine/renderers/detect.js.map +1 -0
  85. package/dist/charts/engine/renderers/range.cjs +2 -0
  86. package/dist/charts/engine/renderers/range.cjs.map +1 -0
  87. package/dist/charts/engine/renderers/range.d.cts +5 -0
  88. package/dist/charts/engine/renderers/range.d.ts +5 -0
  89. package/dist/charts/engine/renderers/range.js +32 -0
  90. package/dist/charts/engine/renderers/range.js.map +1 -0
  91. package/dist/charts/engine/renderers/shaders.cjs +266 -0
  92. package/dist/charts/engine/renderers/shaders.cjs.map +1 -0
  93. package/dist/charts/engine/renderers/shaders.d.cts +20 -0
  94. package/dist/charts/engine/renderers/shaders.d.ts +20 -0
  95. package/dist/charts/engine/renderers/shaders.js +251 -0
  96. package/dist/charts/engine/renderers/shaders.js.map +1 -0
  97. package/dist/charts/engine/renderers/types.cjs +2 -0
  98. package/dist/charts/engine/renderers/types.cjs.map +1 -0
  99. package/dist/charts/engine/renderers/types.d.cts +83 -0
  100. package/dist/charts/engine/renderers/types.d.ts +83 -0
  101. package/dist/charts/engine/renderers/types.js +6 -0
  102. package/dist/charts/engine/renderers/types.js.map +1 -0
  103. package/dist/charts/engine/renderers/webgl2.cjs +2 -0
  104. package/dist/charts/engine/renderers/webgl2.cjs.map +1 -0
  105. package/dist/charts/engine/renderers/webgl2.d.cts +5 -0
  106. package/dist/charts/engine/renderers/webgl2.d.ts +5 -0
  107. package/dist/charts/engine/renderers/webgl2.js +134 -0
  108. package/dist/charts/engine/renderers/webgl2.js.map +1 -0
  109. package/dist/charts/engine/renderers/webgpu.cjs +2 -0
  110. package/dist/charts/engine/renderers/webgpu.cjs.map +1 -0
  111. package/dist/charts/engine/renderers/webgpu.d.cts +6 -0
  112. package/dist/charts/engine/renderers/webgpu.d.ts +6 -0
  113. package/dist/charts/engine/renderers/webgpu.js +220 -0
  114. package/dist/charts/engine/renderers/webgpu.js.map +1 -0
  115. package/dist/charts/engine/scale.cjs +2 -0
  116. package/dist/charts/engine/scale.cjs.map +1 -0
  117. package/dist/charts/engine/scale.d.cts +13 -0
  118. package/dist/charts/engine/scale.d.ts +13 -0
  119. package/dist/charts/engine/scale.js +37 -0
  120. package/dist/charts/engine/scale.js.map +1 -0
  121. package/dist/charts/engine/spatial.cjs +2 -0
  122. package/dist/charts/engine/spatial.cjs.map +1 -0
  123. package/dist/charts/engine/spatial.d.cts +18 -0
  124. package/dist/charts/engine/spatial.d.ts +18 -0
  125. package/dist/charts/engine/spatial.js +53 -0
  126. package/dist/charts/engine/spatial.js.map +1 -0
  127. package/dist/charts/engine/theme.cjs +2 -0
  128. package/dist/charts/engine/theme.cjs.map +1 -0
  129. package/dist/charts/engine/theme.d.cts +21 -0
  130. package/dist/charts/engine/theme.d.ts +21 -0
  131. package/dist/charts/engine/theme.js +70 -0
  132. package/dist/charts/engine/theme.js.map +1 -0
  133. package/dist/charts/engine/time.cjs +2 -0
  134. package/dist/charts/engine/time.cjs.map +1 -0
  135. package/dist/charts/engine/time.d.cts +10 -0
  136. package/dist/charts/engine/time.d.ts +10 -0
  137. package/dist/charts/engine/time.js +189 -0
  138. package/dist/charts/engine/time.js.map +1 -0
  139. package/dist/charts/engine/types.d.cts +289 -0
  140. package/dist/charts/engine/types.d.ts +289 -0
  141. package/dist/charts/engine/viewport.cjs +2 -0
  142. package/dist/charts/engine/viewport.cjs.map +1 -0
  143. package/dist/charts/engine/viewport.d.cts +12 -0
  144. package/dist/charts/engine/viewport.d.ts +12 -0
  145. package/dist/charts/engine/viewport.js +15 -0
  146. package/dist/charts/engine/viewport.js.map +1 -0
  147. package/dist/charts/index.cjs +1 -0
  148. package/dist/charts/index.d.cts +4 -0
  149. package/dist/charts/index.d.ts +4 -0
  150. package/dist/charts/index.js +7 -0
  151. package/dist/charts/react/Chart.cjs +2 -0
  152. package/dist/charts/react/Chart.cjs.map +1 -0
  153. package/dist/charts/react/Chart.d.cts +28 -0
  154. package/dist/charts/react/Chart.d.ts +28 -0
  155. package/dist/charts/react/Chart.js +75 -0
  156. package/dist/charts/react/Chart.js.map +1 -0
  157. package/dist/charts/react/charts.cjs +2 -0
  158. package/dist/charts/react/charts.cjs.map +1 -0
  159. package/dist/charts/react/charts.d.cts +13 -0
  160. package/dist/charts/react/charts.d.ts +13 -0
  161. package/dist/charts/react/charts.js +179 -0
  162. package/dist/charts/react/charts.js.map +1 -0
  163. package/dist/charts/react/types.d.cts +168 -0
  164. package/dist/charts/react/types.d.ts +168 -0
  165. package/package.json +28 -2
@@ -0,0 +1,179 @@
1
+ "use client";
2
+ import { ChartBase as e, engineOptions as t } from "./Chart.js";
3
+ import { useMemo as n } from "react";
4
+ import { jsx as r } from "react/jsx-runtime";
5
+ //#region src/react/charts.tsx
6
+ var i = (e, t, n) => e.map((e) => ({
7
+ ...e,
8
+ type: e.type ?? t,
9
+ ...n !== void 0 && (e.type ?? t) === "bar" ? { stack: e.stack ?? n } : {}
10
+ })), a = (e) => ({
11
+ height: e.height,
12
+ width: e.width,
13
+ className: e.className,
14
+ style: e.style,
15
+ handleRef: e.ref,
16
+ onHover: e.onHover,
17
+ onPointClick: e.onPointClick,
18
+ onZoom: e.onZoom,
19
+ onRendererChange: e.onRendererChange
20
+ });
21
+ function o(o) {
22
+ let { series: s, area: c = !1 } = o, l = n(() => i(s, c ? "area" : "line"), [s, c]);
23
+ return /* @__PURE__ */ r(e, {
24
+ options: t({
25
+ ...o,
26
+ series: l
27
+ }),
28
+ ...a(o)
29
+ });
30
+ }
31
+ function s(o) {
32
+ let { series: s, stacked: c = !1 } = o, l = n(() => i(s, "bar", c ? "stack" : void 0), [s, c]);
33
+ return /* @__PURE__ */ r(e, {
34
+ options: t({
35
+ ...o,
36
+ series: l
37
+ }),
38
+ ...a(o)
39
+ });
40
+ }
41
+ function c(o) {
42
+ let { series: s } = o, c = n(() => i(s, "scatter"), [s]);
43
+ return /* @__PURE__ */ r(e, {
44
+ options: t({
45
+ ...o,
46
+ series: c
47
+ }),
48
+ ...a(o)
49
+ });
50
+ }
51
+ var l = {
52
+ topLeft: "var(--danger-color, #ef4444)",
53
+ topRight: "var(--primary-color, #4f46e5)",
54
+ bottomLeft: "var(--warning-color, #f59e0b)",
55
+ bottomRight: "var(--text-secondary-color, #64748b)"
56
+ };
57
+ function u(i) {
58
+ let { points: o, xDomain: s = [0, 10], yDomain: c = [0, 10], xSplit: u, ySplit: d, quadrants: f, xLabel: p, yLabel: m, reverseX: h = !1, showLabels: g = !0, pointSize: _ = 12, name: v, onPointClick: y } = i, [b, x] = s, [S, C] = c, w = u ?? (b + x) / 2, T = d ?? (S + C) / 2, E = n(() => {
59
+ let e = (e) => ({
60
+ ...f?.[e],
61
+ color: f?.[e]?.color ?? l[e]
62
+ });
63
+ return {
64
+ topLeft: e("topLeft"),
65
+ topRight: e("topRight"),
66
+ bottomLeft: e("bottomLeft"),
67
+ bottomRight: e("bottomRight")
68
+ };
69
+ }, [f]), D = n(() => {
70
+ let e = (e, t) => {
71
+ let n = h ? e < w : e >= w;
72
+ return t >= T ? n ? "topRight" : "topLeft" : n ? "bottomRight" : "bottomLeft";
73
+ };
74
+ return [{
75
+ type: "scatter",
76
+ name: v ?? "",
77
+ pointSize: _,
78
+ showLabels: g,
79
+ opacity: .9,
80
+ data: o.map((t) => ({
81
+ x: t.x,
82
+ y: t.y,
83
+ label: t.label,
84
+ size: t.size,
85
+ color: t.color ?? E[e(t.x, t.y)].color
86
+ }))
87
+ }];
88
+ }, [
89
+ o,
90
+ E,
91
+ h,
92
+ w,
93
+ T,
94
+ v,
95
+ _,
96
+ g
97
+ ]), O = n(() => {
98
+ let e = h ? [w, x] : [b, w], t = h ? [b, w] : [w, x], n = (e, [t, n], [r, i], a) => ({
99
+ type: "rect",
100
+ x0: t,
101
+ x1: n,
102
+ y0: r,
103
+ y1: i,
104
+ color: E[e].color,
105
+ opacity: .07,
106
+ label: E[e].label,
107
+ labelPosition: a
108
+ });
109
+ return [
110
+ n("topLeft", e, [T, C], "top-left"),
111
+ n("topRight", t, [T, C], "top-right"),
112
+ n("bottomLeft", e, [S, T], "bottom-left"),
113
+ n("bottomRight", t, [S, T], "bottom-right"),
114
+ {
115
+ type: "line",
116
+ axis: "x",
117
+ value: w,
118
+ dash: [],
119
+ color: "var(--border-strong-color, var(--border-color, #cbd5e1))"
120
+ },
121
+ {
122
+ type: "line",
123
+ axis: "y",
124
+ value: T,
125
+ dash: [],
126
+ color: "var(--border-strong-color, var(--border-color, #cbd5e1))"
127
+ },
128
+ ...i.annotations ?? []
129
+ ];
130
+ }, [
131
+ E,
132
+ h,
133
+ b,
134
+ x,
135
+ S,
136
+ C,
137
+ w,
138
+ T,
139
+ i.annotations
140
+ ]), k = t({
141
+ ...i,
142
+ series: D,
143
+ annotations: O,
144
+ xAxis: {
145
+ min: b,
146
+ max: x,
147
+ title: p,
148
+ reverse: h,
149
+ nice: !1,
150
+ grid: !1,
151
+ tickCount: 4
152
+ },
153
+ yAxis: {
154
+ min: S,
155
+ max: C,
156
+ title: m,
157
+ nice: !1,
158
+ grid: !1,
159
+ tickCount: 4
160
+ },
161
+ legend: i.legend ?? !1,
162
+ interaction: i.interaction ?? { zoom: !1 }
163
+ });
164
+ return /* @__PURE__ */ r(e, {
165
+ options: k,
166
+ ...a({
167
+ ...i,
168
+ onPointClick: void 0
169
+ }),
170
+ onPointClick: y ? (e) => {
171
+ let t = e.items[0]?.index;
172
+ t !== void 0 && o[t] && y(o[t], t);
173
+ } : void 0
174
+ });
175
+ }
176
+ //#endregion
177
+ export { s as BarChart, o as LineChart, u as QuadrantChart, c as ScatterChart };
178
+
179
+ //# sourceMappingURL=charts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"charts.js","names":["withType","series","s","type","stack","frameProps","props","LineChart","input","useMemo","area","ChartBase","engineOptions","BarChart","stacked","ScatterChart","DEFAULT_QUADRANT_COLORS","QuadrantChart","x0","x1","xDomain","y0","y1","yDomain","xs","xSplit","ys","ySplit","regions","region","quadrants","corner","cornerOf","right","reverseX","x","y","name","points","p","pointSize","showLabels","annotations","left","rect","xa","xb","ya","yb","position","options","xLabel","yLabel","onPointClick","index","event"],"sources":["../../../../charts/src/react/charts.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport type {\n ChartAnnotation,\n ChartSeries,\n ChartSeriesType,\n} from \"../engine/types\";\nimport { ChartBase, engineOptions } from \"./Chart\";\nimport type {\n BarChartProps,\n ChartCommonProps,\n LineChartProps,\n QuadrantChartProps,\n QuadrantRegion,\n ScatterChartProps,\n} from \"./types\";\n\nconst withType = (\n series: readonly ChartSeries[],\n type: ChartSeriesType,\n stack?: string,\n): ChartSeries[] =>\n series.map((s) => ({\n ...s,\n type: s.type ?? type,\n ...(stack !== undefined && (s.type ?? type) === \"bar\"\n ? { stack: s.stack ?? stack }\n : {}),\n }));\n\nconst frameProps = (props: ChartCommonProps) => ({\n height: props.height,\n width: props.width,\n className: props.className,\n style: props.style,\n handleRef: props.ref,\n onHover: props.onHover,\n onPointClick: props.onPointClick,\n onZoom: props.onZoom,\n onRendererChange: props.onRendererChange,\n});\n\n/** Line (or area) chart; handles millions of points on the GPU */\nexport function LineChart(props: LineChartProps) {\n const { series: input, area = false } = props;\n const series = useMemo(\n () => withType(input, area ? \"area\" : \"line\"),\n [input, area],\n );\n return (\n <ChartBase\n options={engineOptions({ ...props, series })}\n {...frameProps(props)}\n />\n );\n}\n\n/** Bar chart: grouped side by side, or stacked */\nexport function BarChart(props: BarChartProps) {\n const { series: input, stacked = false } = props;\n const series = useMemo(\n () => withType(input, \"bar\", stacked ? \"stack\" : undefined),\n [input, stacked],\n );\n return (\n <ChartBase\n options={engineOptions({ ...props, series })}\n {...frameProps(props)}\n />\n );\n}\n\n/** Scatter chart: zooms on both axes, hit testing through a spatial index */\nexport function ScatterChart(props: ScatterChartProps) {\n const { series: input } = props;\n const series = useMemo(() => withType(input, \"scatter\"), [input]);\n return (\n <ChartBase\n options={engineOptions({ ...props, series })}\n {...frameProps(props)}\n />\n );\n}\n\nconst DEFAULT_QUADRANT_COLORS = {\n topLeft: \"var(--danger-color, #ef4444)\",\n topRight: \"var(--primary-color, #4f46e5)\",\n bottomLeft: \"var(--warning-color, #f59e0b)\",\n bottomRight: \"var(--text-secondary-color, #64748b)\",\n} as const;\n\ntype Corner = keyof typeof DEFAULT_QUADRANT_COLORS;\n\n/**\n * Four-quadrant matrix (priority matrix, Eisenhower, BCG, ...): tinted\n * quadrants with titles, dividers, and labelled dots placed without\n * overlapping labels.\n */\nexport function QuadrantChart(props: QuadrantChartProps) {\n const {\n points,\n xDomain = [0, 10],\n yDomain = [0, 10],\n xSplit,\n ySplit,\n quadrants,\n xLabel,\n yLabel,\n reverseX = false,\n showLabels = true,\n pointSize = 12,\n name,\n onPointClick,\n } = props;\n const [x0, x1] = xDomain;\n const [y0, y1] = yDomain;\n const xs = xSplit ?? (x0 + x1) / 2;\n const ys = ySplit ?? (y0 + y1) / 2;\n\n const regions = useMemo(() => {\n const region = (\n corner: Corner,\n ): Required<Pick<QuadrantRegion, \"color\">> & QuadrantRegion => ({\n ...quadrants?.[corner],\n color: quadrants?.[corner]?.color ?? DEFAULT_QUADRANT_COLORS[corner],\n });\n return {\n topLeft: region(\"topLeft\"),\n topRight: region(\"topRight\"),\n bottomLeft: region(\"bottomLeft\"),\n bottomRight: region(\"bottomRight\"),\n };\n }, [quadrants]);\n\n const series = useMemo((): ChartSeries[] => {\n const cornerOf = (x: number, y: number): Corner => {\n const right = reverseX ? x < xs : x >= xs;\n const top = y >= ys;\n return top\n ? right\n ? \"topRight\"\n : \"topLeft\"\n : right\n ? \"bottomRight\"\n : \"bottomLeft\";\n };\n return [\n {\n type: \"scatter\",\n name: name ?? \"\",\n pointSize,\n showLabels,\n opacity: 0.9,\n data: points.map((p) => ({\n x: p.x,\n y: p.y,\n label: p.label,\n size: p.size,\n color: p.color ?? regions[cornerOf(p.x, p.y)].color,\n })),\n },\n ];\n }, [points, regions, reverseX, xs, ys, name, pointSize, showLabels]);\n\n const annotations = useMemo((): ChartAnnotation[] => {\n // visual left / right -> data ranges\n const left: [number, number] = reverseX ? [xs, x1] : [x0, xs];\n const right: [number, number] = reverseX ? [x0, xs] : [xs, x1];\n const rect = (\n corner: Corner,\n [xa, xb]: [number, number],\n [ya, yb]: [number, number],\n position: \"top-left\" | \"top-right\" | \"bottom-left\" | \"bottom-right\",\n ): ChartAnnotation => ({\n type: \"rect\",\n x0: xa,\n x1: xb,\n y0: ya,\n y1: yb,\n color: regions[corner].color,\n opacity: 0.07,\n label: regions[corner].label,\n labelPosition: position,\n });\n return [\n rect(\"topLeft\", left, [ys, y1], \"top-left\"),\n rect(\"topRight\", right, [ys, y1], \"top-right\"),\n rect(\"bottomLeft\", left, [y0, ys], \"bottom-left\"),\n rect(\"bottomRight\", right, [y0, ys], \"bottom-right\"),\n {\n type: \"line\",\n axis: \"x\",\n value: xs,\n dash: [],\n color: \"var(--border-strong-color, var(--border-color, #cbd5e1))\",\n },\n {\n type: \"line\",\n axis: \"y\",\n value: ys,\n dash: [],\n color: \"var(--border-strong-color, var(--border-color, #cbd5e1))\",\n },\n ...(props.annotations ?? []),\n ];\n }, [regions, reverseX, x0, x1, y0, y1, xs, ys, props.annotations]);\n\n const options = engineOptions({\n ...props,\n series,\n annotations,\n xAxis: {\n min: x0,\n max: x1,\n title: xLabel,\n reverse: reverseX,\n nice: false,\n grid: false,\n tickCount: 4,\n },\n yAxis: {\n min: y0,\n max: y1,\n title: yLabel,\n nice: false,\n grid: false,\n tickCount: 4,\n },\n legend: props.legend ?? false,\n interaction: props.interaction ?? { zoom: false },\n });\n\n return (\n <ChartBase\n options={options}\n {...frameProps({ ...props, onPointClick: undefined })}\n onPointClick={\n onPointClick\n ? (event) => {\n const index = event.items[0]?.index;\n if (index !== undefined && points[index])\n onPointClick(points[index], index);\n }\n : undefined\n }\n />\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,168 @@
1
+ import { CSSProperties, Ref } from 'react';
2
+ import { ChartAnnotation, ChartAxisOptions, ChartHoverEvent, ChartInstance, ChartLegendOptions, ChartInteractionOptions, ChartPadding, ChartRendererKind, ChartRendererPreference, ChartSeries, ChartTooltipOptions, ChartView } from '../engine/types.cjs';
3
+ /** Imperative handle of the chart components (`ref`) */
4
+ export interface ChartHandle {
5
+ /** Shows the whole data range */
6
+ resetZoom(): void;
7
+ /** Visible range */
8
+ getView(): ChartView | null;
9
+ /** Sets the visible range */
10
+ setView(view: Partial<ChartView>): void;
11
+ /** Backend in use, `null` until ready */
12
+ getRenderer(): ChartRendererKind | null;
13
+ /** The underlying engine instance (minerva-design/charts/core) */
14
+ getInstance(): ChartInstance | null;
15
+ }
16
+ /** Props shared by every chart component */
17
+ export interface ChartCommonProps {
18
+ /**
19
+ * Height of the chart (the legend included); numbers are pixels
20
+ * @default 320
21
+ */
22
+ height?: number | string;
23
+ /**
24
+ * Width of the chart; numbers are pixels
25
+ * @default "100%"
26
+ */
27
+ width?: number | string;
28
+ /** X axis */
29
+ xAxis?: ChartAxisOptions;
30
+ /** Y axis */
31
+ yAxis?: ChartAxisOptions;
32
+ /**
33
+ * Backend of the data layer: `auto` tries WebGPU, then WebGL2, then Canvas2D
34
+ * @default "auto"
35
+ */
36
+ renderer?: ChartRendererPreference;
37
+ /** Legend; shown by default when several series have a name */
38
+ legend?: boolean | ChartLegendOptions;
39
+ /** Tooltip; `false` disables it */
40
+ tooltip?: boolean | ChartTooltipOptions;
41
+ /** Vertical guide line following the pointer */
42
+ crosshair?: boolean;
43
+ /** Background areas and reference lines */
44
+ annotations?: readonly ChartAnnotation[];
45
+ /**
46
+ * Zoom (Ctrl / ⌘ + wheel, pinch), pan (drag), double-click reset and keyboard navigation; `false` makes the chart static
47
+ * @default true
48
+ */
49
+ interaction?: boolean | ChartInteractionOptions;
50
+ /** Space around the plot area, in pixels */
51
+ padding?: ChartPadding;
52
+ /** Series colors (defaults to the `--chart-series-1..8` CSS variables, then the theme colors) */
53
+ palette?: readonly string[];
54
+ /** Accessible name of the chart */
55
+ ariaLabel?: string;
56
+ /** Called when the hovered (or keyboard-focused) points change */
57
+ onHover?: (event: ChartHoverEvent | null) => void;
58
+ /** Called when a point (or bar) is clicked */
59
+ onPointClick?: (event: ChartHoverEvent) => void;
60
+ /** Called when the user zooms or pans */
61
+ onZoom?: (view: ChartView) => void;
62
+ /** Called with the backend once it is ready (and when it falls back after a GPU loss) */
63
+ onRendererChange?: (renderer: ChartRendererKind) => void;
64
+ /** Additional class name of the root element */
65
+ className?: string;
66
+ /** Inline styles of the root element */
67
+ style?: CSSProperties;
68
+ /** Imperative handle */
69
+ ref?: Ref<ChartHandle>;
70
+ }
71
+ /** Props of Chart: any mix of line, area, bar and scatter series */
72
+ export interface ChartProps extends ChartCommonProps {
73
+ /** Data series; each sets its own `type` */
74
+ series: readonly ChartSeries[];
75
+ }
76
+ /** Props of LineChart */
77
+ export interface LineChartProps extends ChartCommonProps {
78
+ /** Series drawn as lines (or areas with `area`) unless they set a `type` */
79
+ series: readonly ChartSeries[];
80
+ /**
81
+ * Fills the area under the lines
82
+ * @default false
83
+ */
84
+ area?: boolean;
85
+ }
86
+ /** Props of BarChart */
87
+ export interface BarChartProps extends ChartCommonProps {
88
+ /** Series drawn as bars unless they set a `type` (e.g. a `line` overlay) */
89
+ series: readonly ChartSeries[];
90
+ /**
91
+ * Stacks the bars of every series (otherwise they are grouped side by side)
92
+ * @default false
93
+ */
94
+ stacked?: boolean;
95
+ }
96
+ /** Props of ScatterChart */
97
+ export interface ScatterChartProps extends ChartCommonProps {
98
+ /** Series drawn as dots unless they set a `type` */
99
+ series: readonly ChartSeries[];
100
+ }
101
+ /** A point of a QuadrantChart */
102
+ export interface QuadrantPoint {
103
+ /** Position on the horizontal axis */
104
+ x: number;
105
+ /** Position on the vertical axis */
106
+ y: number;
107
+ /** Text drawn next to the dot and shown in the tooltip */
108
+ label?: string;
109
+ /** Dot color (any CSS color); the color of its quadrant by default */
110
+ color?: string;
111
+ /** Dot diameter in pixels */
112
+ size?: number;
113
+ }
114
+ /** Title and color of a quadrant */
115
+ export interface QuadrantRegion {
116
+ /** Title drawn in the outer corner of the quadrant */
117
+ label?: string;
118
+ /** Background tint and default dot color (any CSS color) */
119
+ color?: string;
120
+ }
121
+ /** The four quadrants of a QuadrantChart */
122
+ export interface QuadrantRegions {
123
+ topLeft?: QuadrantRegion;
124
+ topRight?: QuadrantRegion;
125
+ bottomLeft?: QuadrantRegion;
126
+ bottomRight?: QuadrantRegion;
127
+ }
128
+ /** Props of QuadrantChart */
129
+ export interface QuadrantChartProps extends Omit<ChartCommonProps, "onPointClick" | "xAxis" | "yAxis"> {
130
+ /** Points to place */
131
+ points: readonly QuadrantPoint[];
132
+ /**
133
+ * Range of the horizontal axis
134
+ * @default [0, 10]
135
+ */
136
+ xDomain?: [number, number];
137
+ /**
138
+ * Range of the vertical axis
139
+ * @default [0, 10]
140
+ */
141
+ yDomain?: [number, number];
142
+ /** X value of the vertical divider (the middle of `xDomain` by default) */
143
+ xSplit?: number;
144
+ /** Y value of the horizontal divider (the middle of `yDomain` by default) */
145
+ ySplit?: number;
146
+ /** Titles and colors of the quadrants */
147
+ quadrants?: QuadrantRegions;
148
+ /** Title of the horizontal axis */
149
+ xLabel?: string;
150
+ /** Title of the vertical axis */
151
+ yLabel?: string;
152
+ /** Reverses the horizontal axis (e.g. "urgent" on the left) */
153
+ reverseX?: boolean;
154
+ /**
155
+ * Draws the labels next to the dots (overlapping labels are skipped)
156
+ * @default true
157
+ */
158
+ showLabels?: boolean;
159
+ /**
160
+ * Dot diameter in pixels
161
+ * @default 12
162
+ */
163
+ pointSize?: number;
164
+ /** Name of the points in the tooltip */
165
+ name?: string;
166
+ /** Called with the clicked point and its index */
167
+ onPointClick?: (point: QuadrantPoint, index: number) => void;
168
+ }
@@ -0,0 +1,168 @@
1
+ import { CSSProperties, Ref } from 'react';
2
+ import { ChartAnnotation, ChartAxisOptions, ChartHoverEvent, ChartInstance, ChartLegendOptions, ChartInteractionOptions, ChartPadding, ChartRendererKind, ChartRendererPreference, ChartSeries, ChartTooltipOptions, ChartView } from '../engine/types.js';
3
+ /** Imperative handle of the chart components (`ref`) */
4
+ export interface ChartHandle {
5
+ /** Shows the whole data range */
6
+ resetZoom(): void;
7
+ /** Visible range */
8
+ getView(): ChartView | null;
9
+ /** Sets the visible range */
10
+ setView(view: Partial<ChartView>): void;
11
+ /** Backend in use, `null` until ready */
12
+ getRenderer(): ChartRendererKind | null;
13
+ /** The underlying engine instance (minerva-design/charts/core) */
14
+ getInstance(): ChartInstance | null;
15
+ }
16
+ /** Props shared by every chart component */
17
+ export interface ChartCommonProps {
18
+ /**
19
+ * Height of the chart (the legend included); numbers are pixels
20
+ * @default 320
21
+ */
22
+ height?: number | string;
23
+ /**
24
+ * Width of the chart; numbers are pixels
25
+ * @default "100%"
26
+ */
27
+ width?: number | string;
28
+ /** X axis */
29
+ xAxis?: ChartAxisOptions;
30
+ /** Y axis */
31
+ yAxis?: ChartAxisOptions;
32
+ /**
33
+ * Backend of the data layer: `auto` tries WebGPU, then WebGL2, then Canvas2D
34
+ * @default "auto"
35
+ */
36
+ renderer?: ChartRendererPreference;
37
+ /** Legend; shown by default when several series have a name */
38
+ legend?: boolean | ChartLegendOptions;
39
+ /** Tooltip; `false` disables it */
40
+ tooltip?: boolean | ChartTooltipOptions;
41
+ /** Vertical guide line following the pointer */
42
+ crosshair?: boolean;
43
+ /** Background areas and reference lines */
44
+ annotations?: readonly ChartAnnotation[];
45
+ /**
46
+ * Zoom (Ctrl / ⌘ + wheel, pinch), pan (drag), double-click reset and keyboard navigation; `false` makes the chart static
47
+ * @default true
48
+ */
49
+ interaction?: boolean | ChartInteractionOptions;
50
+ /** Space around the plot area, in pixels */
51
+ padding?: ChartPadding;
52
+ /** Series colors (defaults to the `--chart-series-1..8` CSS variables, then the theme colors) */
53
+ palette?: readonly string[];
54
+ /** Accessible name of the chart */
55
+ ariaLabel?: string;
56
+ /** Called when the hovered (or keyboard-focused) points change */
57
+ onHover?: (event: ChartHoverEvent | null) => void;
58
+ /** Called when a point (or bar) is clicked */
59
+ onPointClick?: (event: ChartHoverEvent) => void;
60
+ /** Called when the user zooms or pans */
61
+ onZoom?: (view: ChartView) => void;
62
+ /** Called with the backend once it is ready (and when it falls back after a GPU loss) */
63
+ onRendererChange?: (renderer: ChartRendererKind) => void;
64
+ /** Additional class name of the root element */
65
+ className?: string;
66
+ /** Inline styles of the root element */
67
+ style?: CSSProperties;
68
+ /** Imperative handle */
69
+ ref?: Ref<ChartHandle>;
70
+ }
71
+ /** Props of Chart: any mix of line, area, bar and scatter series */
72
+ export interface ChartProps extends ChartCommonProps {
73
+ /** Data series; each sets its own `type` */
74
+ series: readonly ChartSeries[];
75
+ }
76
+ /** Props of LineChart */
77
+ export interface LineChartProps extends ChartCommonProps {
78
+ /** Series drawn as lines (or areas with `area`) unless they set a `type` */
79
+ series: readonly ChartSeries[];
80
+ /**
81
+ * Fills the area under the lines
82
+ * @default false
83
+ */
84
+ area?: boolean;
85
+ }
86
+ /** Props of BarChart */
87
+ export interface BarChartProps extends ChartCommonProps {
88
+ /** Series drawn as bars unless they set a `type` (e.g. a `line` overlay) */
89
+ series: readonly ChartSeries[];
90
+ /**
91
+ * Stacks the bars of every series (otherwise they are grouped side by side)
92
+ * @default false
93
+ */
94
+ stacked?: boolean;
95
+ }
96
+ /** Props of ScatterChart */
97
+ export interface ScatterChartProps extends ChartCommonProps {
98
+ /** Series drawn as dots unless they set a `type` */
99
+ series: readonly ChartSeries[];
100
+ }
101
+ /** A point of a QuadrantChart */
102
+ export interface QuadrantPoint {
103
+ /** Position on the horizontal axis */
104
+ x: number;
105
+ /** Position on the vertical axis */
106
+ y: number;
107
+ /** Text drawn next to the dot and shown in the tooltip */
108
+ label?: string;
109
+ /** Dot color (any CSS color); the color of its quadrant by default */
110
+ color?: string;
111
+ /** Dot diameter in pixels */
112
+ size?: number;
113
+ }
114
+ /** Title and color of a quadrant */
115
+ export interface QuadrantRegion {
116
+ /** Title drawn in the outer corner of the quadrant */
117
+ label?: string;
118
+ /** Background tint and default dot color (any CSS color) */
119
+ color?: string;
120
+ }
121
+ /** The four quadrants of a QuadrantChart */
122
+ export interface QuadrantRegions {
123
+ topLeft?: QuadrantRegion;
124
+ topRight?: QuadrantRegion;
125
+ bottomLeft?: QuadrantRegion;
126
+ bottomRight?: QuadrantRegion;
127
+ }
128
+ /** Props of QuadrantChart */
129
+ export interface QuadrantChartProps extends Omit<ChartCommonProps, "onPointClick" | "xAxis" | "yAxis"> {
130
+ /** Points to place */
131
+ points: readonly QuadrantPoint[];
132
+ /**
133
+ * Range of the horizontal axis
134
+ * @default [0, 10]
135
+ */
136
+ xDomain?: [number, number];
137
+ /**
138
+ * Range of the vertical axis
139
+ * @default [0, 10]
140
+ */
141
+ yDomain?: [number, number];
142
+ /** X value of the vertical divider (the middle of `xDomain` by default) */
143
+ xSplit?: number;
144
+ /** Y value of the horizontal divider (the middle of `yDomain` by default) */
145
+ ySplit?: number;
146
+ /** Titles and colors of the quadrants */
147
+ quadrants?: QuadrantRegions;
148
+ /** Title of the horizontal axis */
149
+ xLabel?: string;
150
+ /** Title of the vertical axis */
151
+ yLabel?: string;
152
+ /** Reverses the horizontal axis (e.g. "urgent" on the left) */
153
+ reverseX?: boolean;
154
+ /**
155
+ * Draws the labels next to the dots (overlapping labels are skipped)
156
+ * @default true
157
+ */
158
+ showLabels?: boolean;
159
+ /**
160
+ * Dot diameter in pixels
161
+ * @default 12
162
+ */
163
+ pointSize?: number;
164
+ /** Name of the points in the tooltip */
165
+ name?: string;
166
+ /** Called with the clicked point and its index */
167
+ onPointClick?: (point: QuadrantPoint, index: number) => void;
168
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "minerva-design",
3
- "version": "1.0.2",
3
+ "version": "1.1.0",
4
4
  "description": "Minerva Design: React, Vue, Angular, Web Components and native platform components with shared design tokens and contracts",
5
5
  "license": "MIT",
6
6
  "author": "fwx5618177 <fwx5618177@gmail.com>",
@@ -104,6 +104,26 @@
104
104
  "default": "./dist/core/styling-hooks.cjs"
105
105
  }
106
106
  },
107
+ "./charts": {
108
+ "import": {
109
+ "types": "./dist/charts/index.d.ts",
110
+ "default": "./dist/charts/index.js"
111
+ },
112
+ "require": {
113
+ "types": "./dist/charts/index.d.cts",
114
+ "default": "./dist/charts/index.cjs"
115
+ }
116
+ },
117
+ "./charts/core": {
118
+ "import": {
119
+ "types": "./dist/charts/core.d.ts",
120
+ "default": "./dist/charts/core.js"
121
+ },
122
+ "require": {
123
+ "types": "./dist/charts/core.d.cts",
124
+ "default": "./dist/charts/core.cjs"
125
+ }
126
+ },
107
127
  "./native": {
108
128
  "source": "./dist/native/source/index.ts",
109
129
  "react-native": {
@@ -934,6 +954,12 @@
934
954
  "styling-hooks": [
935
955
  "./dist/core/styling-hooks/index.d.ts"
936
956
  ],
957
+ "charts": [
958
+ "./dist/charts/index.d.ts"
959
+ ],
960
+ "charts/core": [
961
+ "./dist/charts/core.d.ts"
962
+ ],
937
963
  "native": [
938
964
  "./dist/native/index.d.ts"
939
965
  ]
@@ -1038,7 +1064,7 @@
1038
1064
  },
1039
1065
  "miniprogram": "dist/weapp",
1040
1066
  "scripts": {
1041
- "build": "pnpm --filter @minerva/core build && pnpm --filter @minerva/dom build && pnpm --filter @minerva/react build && pnpm --filter @minerva/web-components build && pnpm --filter @minerva/vue build && pnpm --filter @minerva/native build && pnpm --filter @minerva/angular build && pnpm --filter @minerva/taro build && pnpm --filter @minerva/uni build && pnpm --filter @minerva/weapp build",
1067
+ "build": "pnpm --filter @minerva/core build && pnpm --filter @minerva/dom build && pnpm --filter @minerva/charts build && pnpm --filter @minerva/react build && pnpm --filter @minerva/web-components build && pnpm --filter @minerva/vue build && pnpm --filter @minerva/native build && pnpm --filter @minerva/angular build && pnpm --filter @minerva/taro build && pnpm --filter @minerva/uni build && pnpm --filter @minerva/weapp build",
1042
1068
  "sync:package": "node scripts/sync-package.mjs",
1043
1069
  "test:dist": "vitest run",
1044
1070
  "check:package": "node scripts/check-package.mjs",