@sentropic/design-system-vue 0.36.0 → 0.36.18

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 (102) hide show
  1. package/dist/ArcDiagramChart.d.ts +73 -0
  2. package/dist/ArcDiagramChart.d.ts.map +1 -0
  3. package/dist/ArcDiagramChart.js +180 -0
  4. package/dist/ArcDiagramChart.js.map +1 -0
  5. package/dist/AreaRangeChart.d.ts +84 -0
  6. package/dist/AreaRangeChart.d.ts.map +1 -0
  7. package/dist/AreaRangeChart.js +202 -0
  8. package/dist/AreaRangeChart.js.map +1 -0
  9. package/dist/AreaSplineRangeChart.d.ts +74 -0
  10. package/dist/AreaSplineRangeChart.d.ts.map +1 -0
  11. package/dist/AreaSplineRangeChart.js +200 -0
  12. package/dist/AreaSplineRangeChart.js.map +1 -0
  13. package/dist/Autosave.d.ts +1 -1
  14. package/dist/Autosave.d.ts.map +1 -1
  15. package/dist/Avatar.d.ts +1 -1
  16. package/dist/BellCurveChart.d.ts +89 -0
  17. package/dist/BellCurveChart.d.ts.map +1 -0
  18. package/dist/BellCurveChart.js +195 -0
  19. package/dist/BellCurveChart.js.map +1 -0
  20. package/dist/Calendar.d.ts +1 -1
  21. package/dist/ColumnPyramidChart.d.ts +75 -0
  22. package/dist/ColumnPyramidChart.d.ts.map +1 -0
  23. package/dist/ColumnPyramidChart.js +162 -0
  24. package/dist/ColumnPyramidChart.js.map +1 -0
  25. package/dist/ColumnRangeChart.d.ts +91 -0
  26. package/dist/ColumnRangeChart.d.ts.map +1 -0
  27. package/dist/ColumnRangeChart.js +259 -0
  28. package/dist/ColumnRangeChart.js.map +1 -0
  29. package/dist/DataTable.d.ts +1 -1
  30. package/dist/DependencyWheelChart.d.ts +73 -0
  31. package/dist/DependencyWheelChart.d.ts.map +1 -0
  32. package/dist/DependencyWheelChart.js +221 -0
  33. package/dist/DependencyWheelChart.js.map +1 -0
  34. package/dist/DumbbellChart.d.ts +104 -0
  35. package/dist/DumbbellChart.d.ts.map +1 -0
  36. package/dist/DumbbellChart.js +163 -0
  37. package/dist/DumbbellChart.js.map +1 -0
  38. package/dist/ErrorBarChart.d.ts +75 -0
  39. package/dist/ErrorBarChart.d.ts.map +1 -0
  40. package/dist/ErrorBarChart.js +173 -0
  41. package/dist/ErrorBarChart.js.map +1 -0
  42. package/dist/ForceGraph.d.ts +1 -1
  43. package/dist/GanttChart.d.ts +74 -0
  44. package/dist/GanttChart.d.ts.map +1 -0
  45. package/dist/GanttChart.js +245 -0
  46. package/dist/GanttChart.js.map +1 -0
  47. package/dist/HeikinAshiChart.d.ts +65 -0
  48. package/dist/HeikinAshiChart.d.ts.map +1 -0
  49. package/dist/HeikinAshiChart.js +196 -0
  50. package/dist/HeikinAshiChart.js.map +1 -0
  51. package/dist/HollowCandlestickChart.d.ts +65 -0
  52. package/dist/HollowCandlestickChart.d.ts.map +1 -0
  53. package/dist/HollowCandlestickChart.js +189 -0
  54. package/dist/HollowCandlestickChart.js.map +1 -0
  55. package/dist/LollipopChart.js +1 -1
  56. package/dist/OHLCChart.d.ts +65 -0
  57. package/dist/OHLCChart.d.ts.map +1 -0
  58. package/dist/OHLCChart.js +193 -0
  59. package/dist/OHLCChart.js.map +1 -0
  60. package/dist/OrderedList.d.ts +2 -1
  61. package/dist/OrderedList.d.ts.map +1 -1
  62. package/dist/OrderedList.js +2 -2
  63. package/dist/OrderedList.js.map +1 -1
  64. package/dist/OrganizationChart.d.ts +64 -0
  65. package/dist/OrganizationChart.d.ts.map +1 -0
  66. package/dist/OrganizationChart.js +200 -0
  67. package/dist/OrganizationChart.js.map +1 -0
  68. package/dist/PolygonChart.d.ts +72 -0
  69. package/dist/PolygonChart.d.ts.map +1 -0
  70. package/dist/PolygonChart.js +109 -0
  71. package/dist/PolygonChart.js.map +1 -0
  72. package/dist/Popper.d.ts +1 -1
  73. package/dist/StreamgraphChart.d.ts +88 -0
  74. package/dist/StreamgraphChart.d.ts.map +1 -0
  75. package/dist/StreamgraphChart.js +194 -0
  76. package/dist/StreamgraphChart.js.map +1 -0
  77. package/dist/TileMapChart.d.ts +63 -0
  78. package/dist/TileMapChart.d.ts.map +1 -0
  79. package/dist/TileMapChart.js +154 -0
  80. package/dist/TileMapChart.js.map +1 -0
  81. package/dist/TimelineChart.d.ts +68 -0
  82. package/dist/TimelineChart.d.ts.map +1 -0
  83. package/dist/TimelineChart.js +173 -0
  84. package/dist/TimelineChart.js.map +1 -0
  85. package/dist/TreegraphChart.d.ts +64 -0
  86. package/dist/TreegraphChart.d.ts.map +1 -0
  87. package/dist/TreegraphChart.js +198 -0
  88. package/dist/TreegraphChart.js.map +1 -0
  89. package/dist/UnorderedList.d.ts +2 -1
  90. package/dist/UnorderedList.d.ts.map +1 -1
  91. package/dist/UnorderedList.js +2 -2
  92. package/dist/UnorderedList.js.map +1 -1
  93. package/dist/VariablePieChart.d.ts +64 -0
  94. package/dist/VariablePieChart.d.ts.map +1 -0
  95. package/dist/VariablePieChart.js +164 -0
  96. package/dist/VariablePieChart.js.map +1 -0
  97. package/dist/index.d.ts +40 -0
  98. package/dist/index.d.ts.map +1 -1
  99. package/dist/index.js +20 -0
  100. package/dist/index.js.map +1 -1
  101. package/dist/styles.css +2975 -1100
  102. package/package.json +1 -1
@@ -0,0 +1,73 @@
1
+ export type ArcDiagramChartTone = "category1" | "category2" | "category3" | "category4" | "category5" | "category6" | "category7" | "category8";
2
+ export type ArcDiagramChartLink = {
3
+ from: string;
4
+ to: string;
5
+ weight: number;
6
+ };
7
+ export type ArcDiagramChartProps = {
8
+ data: ArcDiagramChartLink[];
9
+ labels?: Record<string, string>;
10
+ width?: number;
11
+ height?: number;
12
+ label: string;
13
+ class?: string;
14
+ };
15
+ export declare const ArcDiagramChart: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
16
+ data: {
17
+ type: () => ArcDiagramChartLink[];
18
+ required: true;
19
+ };
20
+ labels: {
21
+ type: () => Record<string, string>;
22
+ default: undefined;
23
+ };
24
+ width: {
25
+ type: NumberConstructor;
26
+ default: number;
27
+ };
28
+ height: {
29
+ type: NumberConstructor;
30
+ default: number;
31
+ };
32
+ label: {
33
+ type: StringConstructor;
34
+ required: true;
35
+ };
36
+ class: {
37
+ type: StringConstructor;
38
+ default: undefined;
39
+ };
40
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
41
+ [key: string]: any;
42
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
43
+ data: {
44
+ type: () => ArcDiagramChartLink[];
45
+ required: true;
46
+ };
47
+ labels: {
48
+ type: () => Record<string, string>;
49
+ default: undefined;
50
+ };
51
+ width: {
52
+ type: NumberConstructor;
53
+ default: number;
54
+ };
55
+ height: {
56
+ type: NumberConstructor;
57
+ default: number;
58
+ };
59
+ label: {
60
+ type: StringConstructor;
61
+ required: true;
62
+ };
63
+ class: {
64
+ type: StringConstructor;
65
+ default: undefined;
66
+ };
67
+ }>> & Readonly<{}>, {
68
+ class: string;
69
+ height: number;
70
+ width: number;
71
+ labels: Record<string, string>;
72
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
73
+ //# sourceMappingURL=ArcDiagramChart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArcDiagramChart.d.ts","sourceRoot":"","sources":["../src/ArcDiagramChart.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,mBAAmB,GAC3B,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,CAAC;AAEhB,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,mBAAmB,EAAE,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AA4CF,eAAO,MAAM,eAAe;;cAGD,MAAM,mBAAmB,EAAE;;;;cACxB,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;cAD/B,MAAM,mBAAmB,EAAE;;;;cACxB,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;4EAyMxD,CAAC"}
@@ -0,0 +1,180 @@
1
+ import { defineComponent, h, ref } from "vue";
2
+ import { classNames } from "./classNames.js";
3
+ import { chartDataList } from "./chartScale.js";
4
+ import { GraphLegend } from "./GraphLegend.js";
5
+ const TONES = [
6
+ "category1",
7
+ "category2",
8
+ "category3",
9
+ "category4",
10
+ "category5",
11
+ "category6",
12
+ "category7",
13
+ "category8",
14
+ ];
15
+ const MARGIN_X = 24;
16
+ const BASELINE_PAD = 28;
17
+ const MIN_NODE_R = 4;
18
+ const MAX_NODE_R = 9;
19
+ function magnitude(value) {
20
+ return Number.isFinite(value) && value > 0 ? value : 0;
21
+ }
22
+ export const ArcDiagramChart = defineComponent({
23
+ name: "ArcDiagramChart",
24
+ props: {
25
+ data: { type: Array, required: true },
26
+ labels: { type: Object, default: undefined },
27
+ width: { type: Number, default: 480 },
28
+ height: { type: Number, default: 240 },
29
+ label: { type: String, required: true },
30
+ class: { type: String, default: undefined },
31
+ },
32
+ setup(props, { attrs }) {
33
+ const hoveredLinkIndex = ref(null);
34
+ function handleLeave() {
35
+ hoveredLinkIndex.value = null;
36
+ }
37
+ function handleVisualPointerMove(event) {
38
+ const target = event.target;
39
+ if (!(target instanceof Element)) {
40
+ hoveredLinkIndex.value = null;
41
+ return;
42
+ }
43
+ const index = Number(target.getAttribute("data-link-index"));
44
+ hoveredLinkIndex.value = Number.isInteger(index) ? index : null;
45
+ }
46
+ return () => {
47
+ const data = props.data;
48
+ const width = props.width ?? 480;
49
+ const height = props.height ?? 240;
50
+ const label = props.label;
51
+ const displayLabel = (id) => props.labels?.[id] ?? id;
52
+ const baselineY = height - BASELINE_PAD;
53
+ const links = data
54
+ .map((link, index) => ({ link, index, weight: magnitude(link.weight) }))
55
+ .filter((entry) => entry.weight > 0);
56
+ const order = [];
57
+ const degree = new Map();
58
+ for (const { link, weight } of links) {
59
+ for (const id of [link.from, link.to]) {
60
+ if (!degree.has(id)) {
61
+ degree.set(id, 0);
62
+ order.push(id);
63
+ }
64
+ }
65
+ degree.set(link.from, (degree.get(link.from) ?? 0) + weight);
66
+ degree.set(link.to, (degree.get(link.to) ?? 0) + weight);
67
+ }
68
+ const nodes = [];
69
+ const arcs = [];
70
+ const legend = [];
71
+ if (order.length > 0) {
72
+ const usable = Math.max(width - MARGIN_X * 2, 1);
73
+ const step = order.length > 1 ? usable / (order.length - 1) : 0;
74
+ const startX = order.length > 1 ? MARGIN_X : width / 2;
75
+ const maxDegree = Math.max(1, ...order.map((id) => degree.get(id) ?? 0));
76
+ const nodeX = new Map();
77
+ const nodeTone = new Map();
78
+ order.forEach((id, index) => {
79
+ const x = startX + step * index;
80
+ const tone = TONES[index % TONES.length];
81
+ const value = degree.get(id) ?? 0;
82
+ const r = MIN_NODE_R + (MAX_NODE_R - MIN_NODE_R) * (value / maxDegree);
83
+ nodeX.set(id, x);
84
+ nodeTone.set(id, tone);
85
+ nodes.push({ id, tone, x, r, value });
86
+ });
87
+ const maxWeight = Math.max(1, ...links.map((entry) => entry.weight));
88
+ links.forEach(({ link, weight, index }) => {
89
+ const x1 = nodeX.get(link.from);
90
+ const x2 = nodeX.get(link.to);
91
+ const left = Math.min(x1, x2);
92
+ const right = Math.max(x1, x2);
93
+ const radius = (right - left) / 2;
94
+ const sweep = x1 <= x2 ? 1 : 0;
95
+ const path = `M ${x1} ${baselineY} A ${radius} ${radius} 0 0 ${sweep} ${x2} ${baselineY}`;
96
+ const tone = nodeTone.get(link.from);
97
+ arcs.push({
98
+ index,
99
+ from: link.from,
100
+ to: link.to,
101
+ weight,
102
+ tone,
103
+ strokeWidth: Math.max(1.5, (weight / maxWeight) * 6),
104
+ path,
105
+ midX: (left + right) / 2,
106
+ midY: baselineY - radius,
107
+ });
108
+ });
109
+ nodes.forEach((node) => {
110
+ legend.push({ label: displayLabel(node.id), shape: "circle", tone: node.tone });
111
+ });
112
+ }
113
+ const arcNodes = arcs.map((arc) => h("path", {
114
+ key: arc.index,
115
+ class: classNames("st-arcDiagramChart__arc", `st-arcDiagramChart__arc--${arc.tone}`, hoveredLinkIndex.value !== null && hoveredLinkIndex.value !== arc.index
116
+ ? "st-arcDiagramChart__arc--dim"
117
+ : undefined),
118
+ d: arc.path,
119
+ "stroke-width": arc.strokeWidth,
120
+ "data-link-index": arc.index,
121
+ }));
122
+ const nodeNodes = nodes.map((node) => h("circle", {
123
+ key: node.id,
124
+ class: classNames("st-arcDiagramChart__node", `st-arcDiagramChart__node--${node.tone}`),
125
+ cx: node.x,
126
+ cy: baselineY,
127
+ r: node.r,
128
+ }));
129
+ const dataValueItems = data
130
+ .filter((link) => magnitude(link.weight) > 0)
131
+ .map((link) => `${displayLabel(link.from)} -> ${displayLabel(link.to)}: ${link.weight}`);
132
+ const hovered = hoveredLinkIndex.value !== null ? arcs.find((a) => a.index === hoveredLinkIndex.value) : undefined;
133
+ const visualChildren = [
134
+ h("svg", {
135
+ viewBox: `0 0 ${width} ${height}`,
136
+ preserveAspectRatio: "xMidYMid meet",
137
+ width: "100%",
138
+ height: "100%",
139
+ focusable: "false",
140
+ "aria-hidden": "true",
141
+ }, [
142
+ h("line", {
143
+ class: "st-arcDiagramChart__axis",
144
+ x1: MARGIN_X,
145
+ y1: baselineY,
146
+ x2: width - MARGIN_X,
147
+ y2: baselineY,
148
+ }),
149
+ h("g", { class: "st-arcDiagramChart__arcs" }, arcNodes),
150
+ h("g", { class: "st-arcDiagramChart__nodes" }, nodeNodes),
151
+ ]),
152
+ ];
153
+ if (legend.length > 0) {
154
+ visualChildren.push(h(GraphLegend, { class: "st-arcDiagramChart__legend", entries: legend }));
155
+ }
156
+ const children = [
157
+ h("div", {
158
+ class: "st-arcDiagramChart__visual",
159
+ role: "img",
160
+ "aria-label": label,
161
+ onPointermove: handleVisualPointerMove,
162
+ onPointerleave: handleLeave,
163
+ }, visualChildren),
164
+ chartDataList(label, dataValueItems),
165
+ ];
166
+ if (hovered) {
167
+ children.push(h("div", {
168
+ class: "st-arcDiagramChart__tooltip",
169
+ role: "presentation",
170
+ style: `left: ${(hovered.midX / width) * 100}%; top: ${(hovered.midY / height) * 100}%`,
171
+ }, [
172
+ h("span", { class: "st-arcDiagramChart__tooltipLabel" }, `${displayLabel(hovered.from)} -> ${displayLabel(hovered.to)}`),
173
+ h("span", { class: "st-arcDiagramChart__tooltipValue" }, String(hovered.weight)),
174
+ ]));
175
+ }
176
+ return h("div", { ...attrs, class: classNames("st-arcDiagramChart", props.class) }, children);
177
+ };
178
+ },
179
+ });
180
+ //# sourceMappingURL=ArcDiagramChart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArcDiagramChart.js","sourceRoot":"","sources":["../src/ArcDiagramChart.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,84 @@
1
+ export type AreaRangeChartTone = "category1" | "category2" | "category3" | "category4" | "category5" | "category6" | "category7" | "category8";
2
+ export type AreaRangeChartDatum = {
3
+ x: number | string;
4
+ low: number;
5
+ high: number;
6
+ };
7
+ export type AreaRangeChartProps = {
8
+ data: AreaRangeChartDatum[];
9
+ width?: number;
10
+ height?: number;
11
+ tone?: AreaRangeChartTone;
12
+ smooth?: boolean;
13
+ label: string;
14
+ class?: string;
15
+ };
16
+ export declare const AreaRangeChart: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
17
+ data: {
18
+ type: () => AreaRangeChartDatum[];
19
+ default: () => never[];
20
+ };
21
+ width: {
22
+ type: NumberConstructor;
23
+ default: number;
24
+ };
25
+ height: {
26
+ type: NumberConstructor;
27
+ default: number;
28
+ };
29
+ tone: {
30
+ type: () => AreaRangeChartTone;
31
+ default: string;
32
+ };
33
+ smooth: {
34
+ type: BooleanConstructor;
35
+ default: boolean;
36
+ };
37
+ label: {
38
+ type: StringConstructor;
39
+ required: true;
40
+ };
41
+ class: {
42
+ type: StringConstructor;
43
+ default: undefined;
44
+ };
45
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
46
+ [key: string]: any;
47
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
48
+ data: {
49
+ type: () => AreaRangeChartDatum[];
50
+ default: () => never[];
51
+ };
52
+ width: {
53
+ type: NumberConstructor;
54
+ default: number;
55
+ };
56
+ height: {
57
+ type: NumberConstructor;
58
+ default: number;
59
+ };
60
+ tone: {
61
+ type: () => AreaRangeChartTone;
62
+ default: string;
63
+ };
64
+ smooth: {
65
+ type: BooleanConstructor;
66
+ default: boolean;
67
+ };
68
+ label: {
69
+ type: StringConstructor;
70
+ required: true;
71
+ };
72
+ class: {
73
+ type: StringConstructor;
74
+ default: undefined;
75
+ };
76
+ }>> & Readonly<{}>, {
77
+ class: string;
78
+ data: AreaRangeChartDatum[];
79
+ height: number;
80
+ width: number;
81
+ tone: AreaRangeChartTone;
82
+ smooth: boolean;
83
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
84
+ //# sourceMappingURL=AreaRangeChart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AreaRangeChart.d.ts","sourceRoot":"","sources":["../src/AreaRangeChart.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,kBAAkB,GAC1B,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,CAAC;AAEhB,MAAM,MAAM,mBAAmB,GAAG;IAChC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,mBAAmB,EAAE,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAoBF,eAAO,MAAM,cAAc;;cAGA,MAAM,mBAAmB,EAAE;;;;;;;;;;;;cAG1B,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;cAHzB,MAAM,mBAAmB,EAAE;;;;;;;;;;;;cAG1B,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;4EAsOlD,CAAC"}
@@ -0,0 +1,202 @@
1
+ import { defineComponent, h, ref } from "vue";
2
+ import { classNames } from "./classNames.js";
3
+ import { buildLinearPath, buildSmoothPath, CHART_MARGIN, chartDataList, formatTick, isNumeric, niceTicks, scaleLinear, } from "./chartScale.js";
4
+ const MARGIN = CHART_MARGIN;
5
+ let gradientCounter = 0;
6
+ // Normalise a datum: finite low/high, ordered (lo <= hi).
7
+ function normalize(d) {
8
+ if (!Number.isFinite(d.low) || !Number.isFinite(d.high))
9
+ return null;
10
+ return { lo: Math.min(d.low, d.high), hi: Math.max(d.low, d.high) };
11
+ }
12
+ // Continue an existing path along `pts` WITHOUT a leading `M` (the band chains
13
+ // the high line then the reversed low line into one sub-path).
14
+ function continuePath(prefix, pts, curve) {
15
+ if (pts.length === 0)
16
+ return prefix;
17
+ const full = curve ? buildSmoothPath(pts) : buildLinearPath(pts);
18
+ return `${prefix} L${full.slice(1)}`;
19
+ }
20
+ export const AreaRangeChart = defineComponent({
21
+ name: "AreaRangeChart",
22
+ props: {
23
+ data: { type: Array, default: () => [] },
24
+ width: { type: Number, default: 480 },
25
+ height: { type: Number, default: 240 },
26
+ tone: { type: String, default: "category1" },
27
+ smooth: { type: Boolean, default: false },
28
+ label: { type: String, required: true },
29
+ class: { type: String, default: undefined },
30
+ },
31
+ setup(props, { attrs }) {
32
+ const hoveredIndex = ref(null);
33
+ const gradientId = `st-arearangechart-gradient-${(gradientCounter++).toString(36)}-${Math.random().toString(36).substring(2, 9)}`;
34
+ function handleLeave() {
35
+ hoveredIndex.value = null;
36
+ }
37
+ function handleVisualPointerMove(event) {
38
+ const target = event.target;
39
+ if (!(target instanceof Element)) {
40
+ hoveredIndex.value = null;
41
+ return;
42
+ }
43
+ const index = Number(target.getAttribute("data-chart-index"));
44
+ hoveredIndex.value = Number.isInteger(index) ? index : null;
45
+ }
46
+ return () => {
47
+ const width = props.width ?? 480;
48
+ const height = props.height ?? 240;
49
+ const tone = props.tone ?? "category1";
50
+ const smooth = props.smooth ?? false;
51
+ const label = props.label;
52
+ const plotWidth = Math.max(width - MARGIN.left - MARGIN.right, 1);
53
+ const plotHeight = Math.max(height - MARGIN.top - MARGIN.bottom, 1);
54
+ // Valid data: finite low + high.
55
+ const validData = (props.data ?? []).filter((d) => normalize(d) !== null);
56
+ const dataValueItems = validData.map((d) => {
57
+ const r = normalize(d);
58
+ return `${d.x}: ${r.lo} – ${r.hi}`;
59
+ });
60
+ let xDomain;
61
+ if (validData.length === 0) {
62
+ xDomain = { kind: "ordinal", values: [] };
63
+ }
64
+ else if (validData.every((d) => isNumeric(d.x))) {
65
+ const xs = validData.map((d) => d.x);
66
+ xDomain = { kind: "numeric", min: Math.min(...xs), max: Math.max(...xs) };
67
+ }
68
+ else {
69
+ xDomain = { kind: "ordinal", values: validData.map((d) => d.x) };
70
+ }
71
+ let yTicks;
72
+ if (validData.length === 0) {
73
+ yTicks = [0];
74
+ }
75
+ else {
76
+ const lows = validData.map((d) => normalize(d).lo);
77
+ const highs = validData.map((d) => normalize(d).hi);
78
+ const yMin = Math.min(...lows);
79
+ const yMax = Math.max(...highs);
80
+ const padded = (yMax - yMin) * 0.08 || Math.max(Math.abs(yMax), 1) * 0.1;
81
+ yTicks = niceTicks(yMin - padded, yMax + padded, 5);
82
+ }
83
+ const yDomain = yTicks.length === 0 ? { min: 0, max: 1 } : { min: yTicks[0], max: yTicks[yTicks.length - 1] };
84
+ let points = [];
85
+ if (validData.length !== 0) {
86
+ points = validData.map((d, i) => {
87
+ let x;
88
+ if (xDomain.kind === "numeric") {
89
+ x = scaleLinear(d.x, xDomain.min, xDomain.max, 0, plotWidth);
90
+ }
91
+ else {
92
+ const denom = Math.max(validData.length - 1, 1);
93
+ x = validData.length === 1 ? plotWidth / 2 : (i / denom) * plotWidth;
94
+ }
95
+ const r = normalize(d);
96
+ const yLow = scaleLinear(r.lo, yDomain.min, yDomain.max, plotHeight, 0);
97
+ const yHigh = scaleLinear(r.hi, yDomain.min, yDomain.max, plotHeight, 0);
98
+ return {
99
+ x: MARGIN.left + x,
100
+ yLow: MARGIN.top + yLow,
101
+ yHigh: MARGIN.top + yHigh,
102
+ datum: d,
103
+ range: r,
104
+ index: i,
105
+ };
106
+ });
107
+ }
108
+ const highPts = points.map((p) => ({ x: p.x, y: p.yHigh }));
109
+ const lowPts = points.map((p) => ({ x: p.x, y: p.yLow }));
110
+ const highPath = points.length === 0 ? "" : smooth ? buildSmoothPath(highPts) : buildLinearPath(highPts);
111
+ const lowPath = points.length === 0 ? "" : smooth ? buildSmoothPath(lowPts) : buildLinearPath(lowPts);
112
+ let areaPath = "";
113
+ if (points.length !== 0) {
114
+ const lowReversed = [...points].reverse().map((p) => ({ x: p.x, y: p.yLow }));
115
+ areaPath = `${continuePath(highPath, lowReversed, smooth)} Z`;
116
+ }
117
+ const gridLines = yTicks.map((tick) => ({
118
+ value: tick,
119
+ y: MARGIN.top + scaleLinear(tick, yDomain.min, yDomain.max, plotHeight, 0),
120
+ }));
121
+ let xTickEntries = [];
122
+ if (validData.length !== 0) {
123
+ if (xDomain.kind === "ordinal") {
124
+ xTickEntries = points.map((p, i) => ({ x: p.x, label: String(validData[i].x) }));
125
+ }
126
+ else {
127
+ const target = Math.min(5, validData.length);
128
+ const stride = Math.max(1, Math.round((validData.length - 1) / (target - 1 || 1)));
129
+ for (let i = 0; i < validData.length; i += stride) {
130
+ xTickEntries.push({ x: points[i].x, label: String(validData[i].x) });
131
+ }
132
+ const lastIdx = validData.length - 1;
133
+ if (xTickEntries[xTickEntries.length - 1]?.label !== String(validData[lastIdx].x)) {
134
+ xTickEntries.push({ x: points[lastIdx].x, label: String(validData[lastIdx].x) });
135
+ }
136
+ }
137
+ }
138
+ const gridChildren = [];
139
+ for (const g of gridLines) {
140
+ gridChildren.push(h("line", { key: `g${g.value}`, class: "st-areaRangeChart__grid", x1: MARGIN.left, x2: width - MARGIN.right, y1: g.y, y2: g.y }), h("text", { key: `t${g.value}`, class: "st-areaRangeChart__tickLabel", x: MARGIN.left - 6, y: g.y, "text-anchor": "end", "dominant-baseline": "middle" }, formatTick(g.value)));
141
+ }
142
+ const xLabels = xTickEntries.map((tick, i) => h("text", { key: `x${i}`, class: "st-areaRangeChart__tickLabel", x: tick.x, y: height - MARGIN.bottom + 16, "text-anchor": "middle" }, tick.label));
143
+ const dots = [];
144
+ for (const p of points) {
145
+ dots.push(h("circle", { key: `h${p.index}`, class: "st-areaRangeChart__dot", cx: p.x, cy: p.yHigh, r: "3.5", "data-chart-index": p.index }), h("circle", { key: `l${p.index}`, class: "st-areaRangeChart__dot", cx: p.x, cy: p.yLow, r: "3.5", "data-chart-index": p.index }));
146
+ }
147
+ const svgChildren = [
148
+ h("defs", {}, [
149
+ h("linearGradient", { id: gradientId, x1: "0", y1: "0", x2: "0", y2: "1" }, [
150
+ h("stop", { offset: "0%", "stop-color": "currentColor", "stop-opacity": "0.32" }),
151
+ h("stop", { offset: "100%", "stop-color": "currentColor", "stop-opacity": "0.12" }),
152
+ ]),
153
+ ]),
154
+ ...gridChildren,
155
+ h("line", { class: "st-areaRangeChart__axis", x1: MARGIN.left, x2: MARGIN.left, y1: MARGIN.top, y2: height - MARGIN.bottom }),
156
+ h("line", { class: "st-areaRangeChart__axis", x1: MARGIN.left, x2: width - MARGIN.right, y1: height - MARGIN.bottom, y2: height - MARGIN.bottom }),
157
+ ...xLabels,
158
+ ];
159
+ if (areaPath) {
160
+ svgChildren.push(h("path", { class: "st-areaRangeChart__area", d: areaPath, fill: `url(#${gradientId})` }));
161
+ }
162
+ if (highPath) {
163
+ svgChildren.push(h("path", { class: "st-areaRangeChart__line st-areaRangeChart__line--high", d: highPath, fill: "none", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }));
164
+ }
165
+ if (lowPath) {
166
+ svgChildren.push(h("path", { class: "st-areaRangeChart__line st-areaRangeChart__line--low", d: lowPath, fill: "none", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }));
167
+ }
168
+ svgChildren.push(...dots);
169
+ const hoveredPoint = hoveredIndex.value !== null ? points[hoveredIndex.value] : undefined;
170
+ return h("div", { ...attrs, class: classNames("st-areaRangeChart", `st-areaRangeChart--${tone}`, props.class) }, [
171
+ h("div", {
172
+ class: "st-areaRangeChart__visual",
173
+ role: "img",
174
+ "aria-label": label,
175
+ onPointermove: handleVisualPointerMove,
176
+ onPointerleave: handleLeave,
177
+ }, [
178
+ h("svg", {
179
+ viewBox: `0 0 ${width} ${height}`,
180
+ preserveAspectRatio: "xMidYMid meet",
181
+ width: "100%",
182
+ height: "100%",
183
+ focusable: "false",
184
+ "aria-hidden": "true",
185
+ }, svgChildren),
186
+ ]),
187
+ chartDataList(label, dataValueItems),
188
+ hoveredPoint
189
+ ? h("div", {
190
+ class: "st-areaRangeChart__tooltip",
191
+ role: "presentation",
192
+ style: `left: ${(hoveredPoint.x / width) * 100}%; top: ${(hoveredPoint.yHigh / height) * 100}%`,
193
+ }, [
194
+ h("span", { class: "st-areaRangeChart__tooltipLabel" }, String(hoveredPoint.datum.x)),
195
+ h("span", { class: "st-areaRangeChart__tooltipValue" }, `${hoveredPoint.range.lo} – ${hoveredPoint.range.hi}`),
196
+ ])
197
+ : null,
198
+ ]);
199
+ };
200
+ },
201
+ });
202
+ //# sourceMappingURL=AreaRangeChart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AreaRangeChart.js","sourceRoot":"","sources":["../src/AreaRangeChart.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ export type AreaSplineRangeChartTone = "category1" | "category2" | "category3" | "category4" | "category5" | "category6" | "category7" | "category8";
2
+ export type AreaSplineRangeChartDatum = {
3
+ x: number | string;
4
+ low: number;
5
+ high: number;
6
+ };
7
+ export type AreaSplineRangeChartProps = {
8
+ data: AreaSplineRangeChartDatum[];
9
+ width?: number;
10
+ height?: number;
11
+ tone?: AreaSplineRangeChartTone;
12
+ label: string;
13
+ class?: string;
14
+ };
15
+ export declare const AreaSplineRangeChart: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
16
+ data: {
17
+ type: () => AreaSplineRangeChartDatum[];
18
+ default: () => never[];
19
+ };
20
+ width: {
21
+ type: NumberConstructor;
22
+ default: number;
23
+ };
24
+ height: {
25
+ type: NumberConstructor;
26
+ default: number;
27
+ };
28
+ tone: {
29
+ type: () => AreaSplineRangeChartTone;
30
+ default: string;
31
+ };
32
+ label: {
33
+ type: StringConstructor;
34
+ required: true;
35
+ };
36
+ class: {
37
+ type: StringConstructor;
38
+ default: undefined;
39
+ };
40
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
41
+ [key: string]: any;
42
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
43
+ data: {
44
+ type: () => AreaSplineRangeChartDatum[];
45
+ default: () => never[];
46
+ };
47
+ width: {
48
+ type: NumberConstructor;
49
+ default: number;
50
+ };
51
+ height: {
52
+ type: NumberConstructor;
53
+ default: number;
54
+ };
55
+ tone: {
56
+ type: () => AreaSplineRangeChartTone;
57
+ default: string;
58
+ };
59
+ label: {
60
+ type: StringConstructor;
61
+ required: true;
62
+ };
63
+ class: {
64
+ type: StringConstructor;
65
+ default: undefined;
66
+ };
67
+ }>> & Readonly<{}>, {
68
+ class: string;
69
+ data: AreaSplineRangeChartDatum[];
70
+ height: number;
71
+ width: number;
72
+ tone: AreaSplineRangeChartTone;
73
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
74
+ //# sourceMappingURL=AreaSplineRangeChart.d.ts.map