blazeplot 0.2.1 → 0.2.2
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.
- package/README.md +11 -2
- package/dist/core/SeriesStore.d.ts +7 -0
- package/dist/core/SeriesStore.d.ts.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/types.d.ts +8 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +261 -142
- package/dist/index.js.map +1 -1
- package/dist/plugins/annotations.d.ts +3 -0
- package/dist/plugins/annotations.d.ts.map +1 -0
- package/dist/plugins/annotations.js +163 -0
- package/dist/plugins/annotations.js.map +1 -0
- package/dist/render/ReglBackend.d.ts +1 -0
- package/dist/render/ReglBackend.d.ts.map +1 -1
- package/dist/render/Renderer.d.ts +1 -0
- package/dist/render/Renderer.d.ts.map +1 -1
- package/dist/render/types.d.ts +1 -0
- package/dist/render/types.d.ts.map +1 -1
- package/dist/ui/Annotations.d.ts +94 -0
- package/dist/ui/Annotations.d.ts.map +1 -0
- package/dist/ui/Chart.d.ts +4 -0
- package/dist/ui/Chart.d.ts.map +1 -1
- package/package.json +7 -1
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { annotationsPlugin } from '../ui/Annotations.js';
|
|
2
|
+
export type { Annotation, AnnotationBase, AnnotationLabelOptions, AnnotationsPlugin, AnnotationsPluginOptions, BoxAnnotation, LabelAnnotation, PointAnnotation, XLineAnnotation, XRangeAnnotation, YLineAnnotation, YRangeAnnotation } from '../ui/Annotations.js';
|
|
3
|
+
//# sourceMappingURL=annotations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../src/plugins/annotations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
//#region src/ui/Annotations.ts
|
|
2
|
+
var e = "http://www.w3.org/2000/svg";
|
|
3
|
+
function t(t) {
|
|
4
|
+
return document.createElementNS(e, t);
|
|
5
|
+
}
|
|
6
|
+
function n(e) {
|
|
7
|
+
return e ? typeof e == "string" ? e : e.text : null;
|
|
8
|
+
}
|
|
9
|
+
function r(e) {
|
|
10
|
+
return typeof e == "string" ? { text: e } : e ?? { text: "" };
|
|
11
|
+
}
|
|
12
|
+
function i(e, t, n, r, i, a) {
|
|
13
|
+
let o = Math.max(0, Math.min(e, n)), s = Math.min(i, Math.max(e, n)), c = Math.max(0, Math.min(t, r)), l = Math.min(a, Math.max(t, r));
|
|
14
|
+
return s <= o || l <= c ? null : {
|
|
15
|
+
x: o,
|
|
16
|
+
y: c,
|
|
17
|
+
w: s - o,
|
|
18
|
+
h: l - c
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
function a(e, t, n, r) {
|
|
22
|
+
return e >= 0 && e <= n && t >= 0 && t <= r;
|
|
23
|
+
}
|
|
24
|
+
function o(e = {}) {
|
|
25
|
+
let n = [...e.annotations ?? []], r = null, i = null, a = e.defaultColor ?? "rgba(255,255,255,0.85)", o = e.defaultFillColor ?? "rgba(255,255,255,0.12)", c = e.defaultFont ?? "12px system-ui, sans-serif", l = () => {
|
|
26
|
+
r && i && s(r, i, n, a, o, c);
|
|
27
|
+
};
|
|
28
|
+
return {
|
|
29
|
+
install(n) {
|
|
30
|
+
r = n, i = t("svg"), i.classList.add(e.className ?? "blazeplot-annotations"), i.style.position = "absolute", i.style.inset = "0", i.style.width = "100%", i.style.height = "100%", i.style.pointerEvents = "none", i.style.overflow = "hidden", i.style.zIndex = String(e.zIndex ?? 12), n.plotElement.appendChild(i);
|
|
31
|
+
let a = n.subscribe("render", () => l());
|
|
32
|
+
return l(), () => {
|
|
33
|
+
a(), i?.remove(), i = null, r = null;
|
|
34
|
+
};
|
|
35
|
+
},
|
|
36
|
+
add(e) {
|
|
37
|
+
n = [...n, e], l();
|
|
38
|
+
},
|
|
39
|
+
remove(e) {
|
|
40
|
+
let t = n.filter((t) => t.id !== e), r = t.length !== n.length;
|
|
41
|
+
return r && (n = t, l()), r;
|
|
42
|
+
},
|
|
43
|
+
clear() {
|
|
44
|
+
n = [], l();
|
|
45
|
+
},
|
|
46
|
+
setAnnotations(e) {
|
|
47
|
+
n = [...e], l();
|
|
48
|
+
},
|
|
49
|
+
getAnnotations() {
|
|
50
|
+
return n;
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
function s(e, t, n, r, i, a) {
|
|
55
|
+
let o = Math.max(1, e.canvas.clientWidth), s = Math.max(1, e.canvas.clientHeight);
|
|
56
|
+
t.setAttribute("viewBox", `0 0 ${o} ${s}`), t.replaceChildren();
|
|
57
|
+
for (let l of n) l.visible !== !1 && c(e, t, l, o, s, r, i, a);
|
|
58
|
+
}
|
|
59
|
+
function c(e, n, r, o, s, c, m, h) {
|
|
60
|
+
let g = e.getViewport(r.yAxis ?? "left"), _ = (e) => (e - g.xMin) / (g.xMax - g.xMin) * o, v = (e) => (g.yMax - e) / (g.yMax - g.yMin) * s, y = t("g");
|
|
61
|
+
switch (r.className && y.classList.add(r.className), r.type) {
|
|
62
|
+
case "x-line": {
|
|
63
|
+
let e = _(r.x);
|
|
64
|
+
if (e < 0 || e > o) return;
|
|
65
|
+
let n = t("line");
|
|
66
|
+
n.setAttribute("x1", String(e)), n.setAttribute("x2", String(e)), n.setAttribute("y1", "0"), n.setAttribute("y2", String(s)), l(n, r.color ?? c, r.width, r.dash), y.appendChild(n), p(y, r.label, e + 4, 6, "start", c, h);
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
case "y-line": {
|
|
70
|
+
let e = v(r.y);
|
|
71
|
+
if (e < 0 || e > s) return;
|
|
72
|
+
let n = t("line");
|
|
73
|
+
n.setAttribute("x1", "0"), n.setAttribute("x2", String(o)), n.setAttribute("y1", String(e)), n.setAttribute("y2", String(e)), l(n, r.color ?? c, r.width, r.dash), y.appendChild(n), p(y, r.label, o - 4, e - 4, "end", c, h);
|
|
74
|
+
break;
|
|
75
|
+
}
|
|
76
|
+
case "x-range": {
|
|
77
|
+
let e = i(_(r.xMin), 0, _(r.xMax), s, o, s);
|
|
78
|
+
if (!e) return;
|
|
79
|
+
u(y, e, r.fillColor ?? m, r.borderColor, r.borderWidth), p(y, r.label, e.x + e.w * .5, 6, "middle", c, h);
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
case "y-range": {
|
|
83
|
+
let e = i(0, v(r.yMax), o, v(r.yMin), o, s);
|
|
84
|
+
if (!e) return;
|
|
85
|
+
u(y, e, r.fillColor ?? m, r.borderColor, r.borderWidth), p(y, r.label, o - 4, e.y + e.h * .5, "end", c, h);
|
|
86
|
+
break;
|
|
87
|
+
}
|
|
88
|
+
case "box": {
|
|
89
|
+
let e = i(_(r.xMin), v(r.yMax), _(r.xMax), v(r.yMin), o, s);
|
|
90
|
+
if (!e) return;
|
|
91
|
+
u(y, e, r.fillColor ?? m, r.borderColor, r.borderWidth), p(y, r.label, e.x + e.w * .5, e.y + 6, "middle", c, h);
|
|
92
|
+
break;
|
|
93
|
+
}
|
|
94
|
+
case "point": {
|
|
95
|
+
let e = _(r.x), t = v(r.y), n = r.radius ?? 5;
|
|
96
|
+
if (!a(e, t, o, s)) return;
|
|
97
|
+
d(y, e, t, n, r), p(y, r.label, e + n + 4, t - n - 2, "start", c, h);
|
|
98
|
+
break;
|
|
99
|
+
}
|
|
100
|
+
case "label": {
|
|
101
|
+
let e = _(r.x), t = v(r.y);
|
|
102
|
+
if (!a(e, t, o, s)) return;
|
|
103
|
+
f(y, r, e, t, c, h);
|
|
104
|
+
break;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
n.appendChild(y);
|
|
108
|
+
}
|
|
109
|
+
function l(e, t, n = 1, r) {
|
|
110
|
+
e.setAttribute("stroke", t), e.setAttribute("stroke-width", String(n)), e.setAttribute("fill", "none"), r && e.setAttribute("stroke-dasharray", r);
|
|
111
|
+
}
|
|
112
|
+
function u(e, n, r, i, a = 0) {
|
|
113
|
+
let o = t("rect");
|
|
114
|
+
o.setAttribute("x", String(n.x)), o.setAttribute("y", String(n.y)), o.setAttribute("width", String(n.w)), o.setAttribute("height", String(n.h)), o.setAttribute("fill", r), i && (o.setAttribute("stroke", i), o.setAttribute("stroke-width", String(a || 1))), e.appendChild(o);
|
|
115
|
+
}
|
|
116
|
+
function d(e, n, r, i, a) {
|
|
117
|
+
let o = a.color ?? "rgba(255,255,255,0.95)", s = a.strokeColor ?? "rgba(0,0,0,0.35)", c = a.strokeWidth ?? 1;
|
|
118
|
+
if (a.shape === "diamond") {
|
|
119
|
+
let a = t("polygon");
|
|
120
|
+
a.setAttribute("points", `${n},${r - i} ${n + i},${r} ${n},${r + i} ${n - i},${r}`), a.setAttribute("fill", o), a.setAttribute("stroke", s), a.setAttribute("stroke-width", String(c)), e.appendChild(a);
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
if (a.shape === "cross") {
|
|
124
|
+
for (let [a, s, u, d] of [[
|
|
125
|
+
n - i,
|
|
126
|
+
r,
|
|
127
|
+
n + i,
|
|
128
|
+
r
|
|
129
|
+
], [
|
|
130
|
+
n,
|
|
131
|
+
r - i,
|
|
132
|
+
n,
|
|
133
|
+
r + i
|
|
134
|
+
]]) {
|
|
135
|
+
let n = t("line");
|
|
136
|
+
n.setAttribute("x1", String(a)), n.setAttribute("y1", String(s)), n.setAttribute("x2", String(u)), n.setAttribute("y2", String(d)), l(n, o, c + 1), e.appendChild(n);
|
|
137
|
+
}
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
let u = t("circle");
|
|
141
|
+
u.setAttribute("cx", String(n)), u.setAttribute("cy", String(r)), u.setAttribute("r", String(i)), u.setAttribute("fill", o), u.setAttribute("stroke", s), u.setAttribute("stroke-width", String(c)), e.appendChild(u);
|
|
142
|
+
}
|
|
143
|
+
function f(e, n, r, i, a, o) {
|
|
144
|
+
let s = m(e, n.text, r, i, "start", n.color ?? a, n.font ?? o);
|
|
145
|
+
if (n.backgroundColor) {
|
|
146
|
+
let a = t("rect");
|
|
147
|
+
a.setAttribute("x", String(r - 4)), a.setAttribute("y", String(i - 14)), a.setAttribute("width", String(Math.max(16, n.text.length * 7 + 8))), a.setAttribute("height", "18"), a.setAttribute("rx", "3"), a.setAttribute("fill", n.backgroundColor), e.insertBefore(a, s);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
function p(e, t, i, a, o, s, c) {
|
|
151
|
+
let l = n(t);
|
|
152
|
+
if (!l) return;
|
|
153
|
+
let u = r(t);
|
|
154
|
+
m(e, l, i + (u.offsetX ?? 0), a + (u.offsetY ?? 0), o, u.color ?? s, u.font ?? c);
|
|
155
|
+
}
|
|
156
|
+
function m(e, n, r, i, a, o, s) {
|
|
157
|
+
let c = t("text");
|
|
158
|
+
return c.textContent = n, c.setAttribute("x", String(r)), c.setAttribute("y", String(i)), c.setAttribute("fill", o), c.setAttribute("font", s), c.setAttribute("text-anchor", a), c.setAttribute("dominant-baseline", "hanging"), c.setAttribute("paint-order", "stroke"), c.setAttribute("stroke", "rgba(0,0,0,0.45)"), c.setAttribute("stroke-width", "3"), e.appendChild(c), c;
|
|
159
|
+
}
|
|
160
|
+
//#endregion
|
|
161
|
+
export { o as annotationsPlugin };
|
|
162
|
+
|
|
163
|
+
//# sourceMappingURL=annotations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"annotations.js","names":[],"sources":["../../src/ui/Annotations.ts"],"sourcesContent":["import type { Chart, ChartPlugin } from \"./Chart.js\";\nimport type { SeriesYAxis } from \"../core/types.js\";\n\nexport interface AnnotationLabelOptions {\n readonly text: string;\n readonly position?: \"start\" | \"center\" | \"end\" | \"top\" | \"bottom\" | \"left\" | \"right\";\n readonly color?: string;\n readonly font?: string;\n readonly offsetX?: number;\n readonly offsetY?: number;\n}\n\nexport interface AnnotationBase {\n readonly id?: string;\n readonly visible?: boolean;\n readonly yAxis?: SeriesYAxis;\n readonly className?: string;\n readonly label?: string | AnnotationLabelOptions;\n}\n\nexport interface XLineAnnotation extends AnnotationBase {\n readonly type: \"x-line\";\n readonly x: number;\n readonly color?: string;\n readonly width?: number;\n readonly dash?: string;\n}\n\nexport interface YLineAnnotation extends AnnotationBase {\n readonly type: \"y-line\";\n readonly y: number;\n readonly color?: string;\n readonly width?: number;\n readonly dash?: string;\n}\n\nexport interface XRangeAnnotation extends AnnotationBase {\n readonly type: \"x-range\";\n readonly xMin: number;\n readonly xMax: number;\n readonly fillColor?: string;\n readonly borderColor?: string;\n readonly borderWidth?: number;\n}\n\nexport interface YRangeAnnotation extends AnnotationBase {\n readonly type: \"y-range\";\n readonly yMin: number;\n readonly yMax: number;\n readonly fillColor?: string;\n readonly borderColor?: string;\n readonly borderWidth?: number;\n}\n\nexport interface BoxAnnotation extends AnnotationBase {\n readonly type: \"box\";\n readonly xMin: number;\n readonly xMax: number;\n readonly yMin: number;\n readonly yMax: number;\n readonly fillColor?: string;\n readonly borderColor?: string;\n readonly borderWidth?: number;\n}\n\nexport interface PointAnnotation extends AnnotationBase {\n readonly type: \"point\";\n readonly x: number;\n readonly y: number;\n readonly radius?: number;\n readonly color?: string;\n readonly strokeColor?: string;\n readonly strokeWidth?: number;\n readonly shape?: \"circle\" | \"diamond\" | \"cross\";\n}\n\nexport interface LabelAnnotation extends AnnotationBase {\n readonly type: \"label\";\n readonly x: number;\n readonly y: number;\n readonly text: string;\n readonly color?: string;\n readonly font?: string;\n readonly backgroundColor?: string;\n}\n\nexport type Annotation =\n | XLineAnnotation\n | YLineAnnotation\n | XRangeAnnotation\n | YRangeAnnotation\n | BoxAnnotation\n | PointAnnotation\n | LabelAnnotation;\n\nexport interface AnnotationsPluginOptions {\n readonly annotations?: readonly Annotation[];\n readonly className?: string;\n readonly defaultColor?: string;\n readonly defaultFillColor?: string;\n readonly defaultFont?: string;\n readonly zIndex?: number;\n}\n\nexport interface AnnotationsPlugin extends ChartPlugin {\n add(annotation: Annotation): void;\n remove(id: string): boolean;\n clear(): void;\n setAnnotations(annotations: readonly Annotation[]): void;\n getAnnotations(): readonly Annotation[];\n}\n\nconst SVG_NS = \"http://www.w3.org/2000/svg\";\n\nfunction svg<K extends keyof SVGElementTagNameMap>(tag: K): SVGElementTagNameMap[K] {\n return document.createElementNS(SVG_NS, tag);\n}\n\nfunction labelText(label: string | AnnotationLabelOptions | undefined): string | null {\n if (!label) return null;\n return typeof label === \"string\" ? label : label.text;\n}\n\nfunction labelOptions(label: string | AnnotationLabelOptions | undefined): AnnotationLabelOptions {\n return typeof label === \"string\" ? { text: label } : label ?? { text: \"\" };\n}\n\nfunction clampRect(x0: number, y0: number, x1: number, y1: number, width: number, height: number): { x: number; y: number; w: number; h: number } | null {\n const left = Math.max(0, Math.min(x0, x1));\n const right = Math.min(width, Math.max(x0, x1));\n const top = Math.max(0, Math.min(y0, y1));\n const bottom = Math.min(height, Math.max(y0, y1));\n if (right <= left || bottom <= top) return null;\n return { x: left, y: top, w: right - left, h: bottom - top };\n}\n\nfunction isInsidePlot(x: number, y: number, width: number, height: number): boolean {\n return x >= 0 && x <= width && y >= 0 && y <= height;\n}\n\nexport function annotationsPlugin(options: AnnotationsPluginOptions = {}): AnnotationsPlugin {\n let annotations = [...(options.annotations ?? [])];\n let chartRef: Chart | null = null;\n let overlay: SVGSVGElement | null = null;\n const color = options.defaultColor ?? \"rgba(255,255,255,0.85)\";\n const fillColor = options.defaultFillColor ?? \"rgba(255,255,255,0.12)\";\n const font = options.defaultFont ?? \"12px system-ui, sans-serif\";\n\n const requestRender = (): void => {\n if (chartRef && overlay) render(chartRef, overlay, annotations, color, fillColor, font);\n };\n\n return {\n install(chart: Chart) {\n chartRef = chart;\n overlay = svg(\"svg\");\n overlay.classList.add(options.className ?? \"blazeplot-annotations\");\n overlay.style.position = \"absolute\";\n overlay.style.inset = \"0\";\n overlay.style.width = \"100%\";\n overlay.style.height = \"100%\";\n overlay.style.pointerEvents = \"none\";\n overlay.style.overflow = \"hidden\";\n overlay.style.zIndex = String(options.zIndex ?? 12);\n chart.plotElement.appendChild(overlay);\n const unsubscribeRender = chart.subscribe(\"render\", () => requestRender());\n requestRender();\n return () => {\n unsubscribeRender();\n overlay?.remove();\n overlay = null;\n chartRef = null;\n };\n },\n add(annotation: Annotation): void {\n annotations = [...annotations, annotation];\n requestRender();\n },\n remove(id: string): boolean {\n const next = annotations.filter((annotation) => annotation.id !== id);\n const changed = next.length !== annotations.length;\n if (changed) {\n annotations = next;\n requestRender();\n }\n return changed;\n },\n clear(): void {\n annotations = [];\n requestRender();\n },\n setAnnotations(next: readonly Annotation[]): void {\n annotations = [...next];\n requestRender();\n },\n getAnnotations(): readonly Annotation[] {\n return annotations;\n },\n };\n}\n\nfunction render(\n chart: Chart,\n overlay: SVGSVGElement,\n annotations: readonly Annotation[],\n defaultColor: string,\n defaultFillColor: string,\n defaultFont: string,\n): void {\n const width = Math.max(1, chart.canvas.clientWidth);\n const height = Math.max(1, chart.canvas.clientHeight);\n overlay.setAttribute(\"viewBox\", `0 0 ${width} ${height}`);\n overlay.replaceChildren();\n\n for (const annotation of annotations) {\n if (annotation.visible === false) continue;\n drawAnnotation(chart, overlay, annotation, width, height, defaultColor, defaultFillColor, defaultFont);\n }\n}\n\nfunction drawAnnotation(\n chart: Chart,\n overlay: SVGSVGElement,\n annotation: Annotation,\n width: number,\n height: number,\n defaultColor: string,\n defaultFillColor: string,\n defaultFont: string,\n): void {\n const viewport = chart.getViewport(annotation.yAxis ?? \"left\");\n const xToPx = (x: number): number => ((x - viewport.xMin) / (viewport.xMax - viewport.xMin)) * width;\n const yToPx = (y: number): number => ((viewport.yMax - y) / (viewport.yMax - viewport.yMin)) * height;\n const group = svg(\"g\");\n if (annotation.className) group.classList.add(annotation.className);\n\n switch (annotation.type) {\n case \"x-line\": {\n const x = xToPx(annotation.x);\n if (x < 0 || x > width) return;\n const line = svg(\"line\");\n line.setAttribute(\"x1\", String(x));\n line.setAttribute(\"x2\", String(x));\n line.setAttribute(\"y1\", \"0\");\n line.setAttribute(\"y2\", String(height));\n styleStroke(line, annotation.color ?? defaultColor, annotation.width, annotation.dash);\n group.appendChild(line);\n appendLabel(group, annotation.label, x + 4, 6, \"start\", defaultColor, defaultFont);\n break;\n }\n case \"y-line\": {\n const y = yToPx(annotation.y);\n if (y < 0 || y > height) return;\n const line = svg(\"line\");\n line.setAttribute(\"x1\", \"0\");\n line.setAttribute(\"x2\", String(width));\n line.setAttribute(\"y1\", String(y));\n line.setAttribute(\"y2\", String(y));\n styleStroke(line, annotation.color ?? defaultColor, annotation.width, annotation.dash);\n group.appendChild(line);\n appendLabel(group, annotation.label, width - 4, y - 4, \"end\", defaultColor, defaultFont);\n break;\n }\n case \"x-range\": {\n const rect = clampRect(xToPx(annotation.xMin), 0, xToPx(annotation.xMax), height, width, height);\n if (!rect) return;\n appendRect(group, rect, annotation.fillColor ?? defaultFillColor, annotation.borderColor, annotation.borderWidth);\n appendLabel(group, annotation.label, rect.x + rect.w * 0.5, 6, \"middle\", defaultColor, defaultFont);\n break;\n }\n case \"y-range\": {\n const rect = clampRect(0, yToPx(annotation.yMax), width, yToPx(annotation.yMin), width, height);\n if (!rect) return;\n appendRect(group, rect, annotation.fillColor ?? defaultFillColor, annotation.borderColor, annotation.borderWidth);\n appendLabel(group, annotation.label, width - 4, rect.y + rect.h * 0.5, \"end\", defaultColor, defaultFont);\n break;\n }\n case \"box\": {\n const rect = clampRect(xToPx(annotation.xMin), yToPx(annotation.yMax), xToPx(annotation.xMax), yToPx(annotation.yMin), width, height);\n if (!rect) return;\n appendRect(group, rect, annotation.fillColor ?? defaultFillColor, annotation.borderColor, annotation.borderWidth);\n appendLabel(group, annotation.label, rect.x + rect.w * 0.5, rect.y + 6, \"middle\", defaultColor, defaultFont);\n break;\n }\n case \"point\": {\n const x = xToPx(annotation.x);\n const y = yToPx(annotation.y);\n const radius = annotation.radius ?? 5;\n if (!isInsidePlot(x, y, width, height)) return;\n appendMarker(group, x, y, radius, annotation);\n appendLabel(group, annotation.label, x + radius + 4, y - radius - 2, \"start\", defaultColor, defaultFont);\n break;\n }\n case \"label\": {\n const x = xToPx(annotation.x);\n const y = yToPx(annotation.y);\n if (!isInsidePlot(x, y, width, height)) return;\n appendStandaloneLabel(group, annotation, x, y, defaultColor, defaultFont);\n break;\n }\n }\n\n overlay.appendChild(group);\n}\n\nfunction styleStroke(el: SVGElement, color: string, width: number = 1, dash?: string): void {\n el.setAttribute(\"stroke\", color);\n el.setAttribute(\"stroke-width\", String(width));\n el.setAttribute(\"fill\", \"none\");\n if (dash) el.setAttribute(\"stroke-dasharray\", dash);\n}\n\nfunction appendRect(group: SVGGElement, rect: { x: number; y: number; w: number; h: number }, fill: string, stroke?: string, strokeWidth: number = 0): void {\n const el = svg(\"rect\");\n el.setAttribute(\"x\", String(rect.x));\n el.setAttribute(\"y\", String(rect.y));\n el.setAttribute(\"width\", String(rect.w));\n el.setAttribute(\"height\", String(rect.h));\n el.setAttribute(\"fill\", fill);\n if (stroke) {\n el.setAttribute(\"stroke\", stroke);\n el.setAttribute(\"stroke-width\", String(strokeWidth || 1));\n }\n group.appendChild(el);\n}\n\nfunction appendMarker(group: SVGGElement, x: number, y: number, radius: number, annotation: PointAnnotation): void {\n const fill = annotation.color ?? \"rgba(255,255,255,0.95)\";\n const stroke = annotation.strokeColor ?? \"rgba(0,0,0,0.35)\";\n const strokeWidth = annotation.strokeWidth ?? 1;\n if (annotation.shape === \"diamond\") {\n const polygon = svg(\"polygon\");\n polygon.setAttribute(\"points\", `${x},${y - radius} ${x + radius},${y} ${x},${y + radius} ${x - radius},${y}`);\n polygon.setAttribute(\"fill\", fill);\n polygon.setAttribute(\"stroke\", stroke);\n polygon.setAttribute(\"stroke-width\", String(strokeWidth));\n group.appendChild(polygon);\n return;\n }\n\n if (annotation.shape === \"cross\") {\n for (const [x1, y1, x2, y2] of [[x - radius, y, x + radius, y], [x, y - radius, x, y + radius]] as const) {\n const line = svg(\"line\");\n line.setAttribute(\"x1\", String(x1));\n line.setAttribute(\"y1\", String(y1));\n line.setAttribute(\"x2\", String(x2));\n line.setAttribute(\"y2\", String(y2));\n styleStroke(line, fill, strokeWidth + 1);\n group.appendChild(line);\n }\n return;\n }\n\n const circle = svg(\"circle\");\n circle.setAttribute(\"cx\", String(x));\n circle.setAttribute(\"cy\", String(y));\n circle.setAttribute(\"r\", String(radius));\n circle.setAttribute(\"fill\", fill);\n circle.setAttribute(\"stroke\", stroke);\n circle.setAttribute(\"stroke-width\", String(strokeWidth));\n group.appendChild(circle);\n}\n\nfunction appendStandaloneLabel(group: SVGGElement, annotation: LabelAnnotation, x: number, y: number, defaultColor: string, defaultFont: string): void {\n const text = appendText(group, annotation.text, x, y, \"start\", annotation.color ?? defaultColor, annotation.font ?? defaultFont);\n if (annotation.backgroundColor) {\n const rect = svg(\"rect\");\n rect.setAttribute(\"x\", String(x - 4));\n rect.setAttribute(\"y\", String(y - 14));\n rect.setAttribute(\"width\", String(Math.max(16, annotation.text.length * 7 + 8)));\n rect.setAttribute(\"height\", \"18\");\n rect.setAttribute(\"rx\", \"3\");\n rect.setAttribute(\"fill\", annotation.backgroundColor);\n group.insertBefore(rect, text);\n }\n}\n\nfunction appendLabel(group: SVGGElement, label: string | AnnotationLabelOptions | undefined, x: number, y: number, anchor: \"start\" | \"middle\" | \"end\", defaultColor: string, defaultFont: string): void {\n const textValue = labelText(label);\n if (!textValue) return;\n const opts = labelOptions(label);\n appendText(group, textValue, x + (opts.offsetX ?? 0), y + (opts.offsetY ?? 0), anchor, opts.color ?? defaultColor, opts.font ?? defaultFont);\n}\n\nfunction appendText(group: SVGGElement, textValue: string, x: number, y: number, anchor: \"start\" | \"middle\" | \"end\", color: string, font: string): SVGTextElement {\n const text = svg(\"text\");\n text.textContent = textValue;\n text.setAttribute(\"x\", String(x));\n text.setAttribute(\"y\", String(y));\n text.setAttribute(\"fill\", color);\n text.setAttribute(\"font\", font);\n text.setAttribute(\"text-anchor\", anchor);\n text.setAttribute(\"dominant-baseline\", \"hanging\");\n text.setAttribute(\"paint-order\", \"stroke\");\n text.setAttribute(\"stroke\", \"rgba(0,0,0,0.45)\");\n text.setAttribute(\"stroke-width\", \"3\");\n group.appendChild(text);\n return text;\n}\n"],"mappings":"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"}
|
|
@@ -15,6 +15,7 @@ export declare class ReglBackend implements GpuBackend {
|
|
|
15
15
|
dispose(resource: GpuResource): void;
|
|
16
16
|
clear(r: number, g: number, b: number, a: number): void;
|
|
17
17
|
viewport(x: number, y: number, w: number, h: number): void;
|
|
18
|
+
getContext(): WebGL2RenderingContext;
|
|
18
19
|
destroy(): void;
|
|
19
20
|
private createDrawCommand;
|
|
20
21
|
private resolveAttribute;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReglBackend.d.ts","sourceRoot":"","sources":["../../src/render/ReglBackend.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAA+B,MAAM,YAAY,CAAC;AA8BpI,qBAAa,WAAY,YAAW,UAAU;IAC5C,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,IAAI,CAAO;IACnB,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,UAAU,CAA+D;IACjF,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;gBAEtC,MAAM,EAAE,iBAAiB;IAiCrC,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS;IASzC,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,GAAG,WAAW,EAAE,MAAM,GAAE,MAAU,GAAG,IAAI;IAS3F,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU;IAQrD,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAuC1B,OAAO,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAMpC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAIvD,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAS1D,OAAO,IAAI,IAAI;IAKf,OAAO,CAAC,iBAAiB;IAkCzB,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,eAAe;CAUxB"}
|
|
1
|
+
{"version":3,"file":"ReglBackend.d.ts","sourceRoot":"","sources":["../../src/render/ReglBackend.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAA+B,MAAM,YAAY,CAAC;AA8BpI,qBAAa,WAAY,YAAW,UAAU;IAC5C,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,IAAI,CAAO;IACnB,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,UAAU,CAA+D;IACjF,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;gBAEtC,MAAM,EAAE,iBAAiB;IAiCrC,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS;IASzC,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,GAAG,WAAW,EAAE,MAAM,GAAE,MAAU,GAAG,IAAI;IAS3F,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU;IAQrD,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAuC1B,OAAO,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAMpC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAIvD,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAS1D,UAAU,IAAI,sBAAsB;IAIpC,OAAO,IAAI,IAAI;IAKf,OAAO,CAAC,iBAAiB;IAkCzB,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,eAAe;CAUxB"}
|
|
@@ -25,6 +25,7 @@ export declare class Renderer {
|
|
|
25
25
|
updateFloatBuffer(buffer: GpuBuffer, data: Float32Array, floatCount?: number): void;
|
|
26
26
|
viewport(x: number, y: number, width: number, height: number): void;
|
|
27
27
|
setXOrigin(origin: number): void;
|
|
28
|
+
getWebGLContext(): WebGL2RenderingContext | null;
|
|
28
29
|
drawLines(positions: GpuBuffer, count: number, style: SeriesStyle, camera: Camera2D): void;
|
|
29
30
|
drawLineStrip(positions: GpuBuffer, count: number, style: SeriesStyle, camera: Camera2D): void;
|
|
30
31
|
drawClipLineStrip(positions: GpuBuffer, count: number, style: SeriesStyle): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Renderer.d.ts","sourceRoot":"","sources":["../../src/render/Renderer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAiB,UAAU,EAAE,SAAS,EAAc,MAAM,YAAY,CAAC;AACnF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AASpD,qBAAa,QAAQ;IAeP,OAAO,CAAC,OAAO;IAd3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAa;IAC5C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAa;IAC1C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAa;IAChD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAa;IAC7C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAY;IAChD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAY;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAY;IAC5C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqC;IAClE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqC;IACnE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAqC;IACvE,OAAO,CAAC,OAAO,CAAa;gBAER,OAAO,EAAE,UAAU;IAkBvC,IAAI,yBAAyB,IAAI,OAAO,CAEvC;IAED,IAAI,uBAAuB,IAAI,OAAO,CAErC;IAED,IAAI,qBAAqB,IAAI,OAAO,CAEnC;IAED,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAIvD,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS;IAIhD,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,GAAE,MAAoB,GAAG,IAAI;IAKhG,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAInE,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIhC,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI;IAI1F,aAAa,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI;IAI9F,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI;IAIhF,aAAa,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI;IAI5E,kBAAkB,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI;IAInG,2BAA2B,CAAC,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI;IAuBzH,UAAU,CACR,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,QAAQ,EAChB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GACnB,IAAI;IAQP,OAAO,CAAC,mBAAmB;IAgC3B,OAAO,CAAC,gBAAgB;IAiBxB,aAAa,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI;IAgB9F,iBAAiB,CACf,cAAc,EAAE,SAAS,EACzB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,QAAQ,GACf,IAAI;IAuBP,sBAAsB,CACpB,cAAc,EAAE,SAAS,EACzB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,QAAQ,GACf,IAAI;IAwBP,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI;IAIvG,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,qBAAqB;IAgB7B,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,mBAAmB;IAS3B,OAAO,IAAI,IAAI;CAGhB"}
|
|
1
|
+
{"version":3,"file":"Renderer.d.ts","sourceRoot":"","sources":["../../src/render/Renderer.ts"],"names":[],"mappings":"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"}
|
package/dist/render/types.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ export interface GpuBackend {
|
|
|
9
9
|
dispose(resource: GpuResource): void;
|
|
10
10
|
clear(r: number, g: number, b: number, a: number): void;
|
|
11
11
|
viewport(x: number, y: number, w: number, h: number): void;
|
|
12
|
+
getContext?(): WebGL2RenderingContext | null;
|
|
12
13
|
destroy(): void;
|
|
13
14
|
}
|
|
14
15
|
export interface GpuCapabilities {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/render/types.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,cAAc,EAAE,OAAO,MAAM,CAAC;AAC5C,OAAO,CAAC,MAAM,eAAe,EAAE,OAAO,MAAM,CAAC;AAE7C,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;IACvC,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;IAC1C,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,GAAG,WAAW,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzF,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;IACtD,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;IACrC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxD,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3D,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IAChD,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC;CAClC;AAED,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC;AAEjD,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,MAAM,EAAE,GAAG,YAAY,CAAC;AAE/E,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,WAAW,GAAG,gBAAgB,CAAC;IACvF,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;IAC1D,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC;IACzE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;CAC/B"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/render/types.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,cAAc,EAAE,OAAO,MAAM,CAAC;AAC5C,OAAO,CAAC,MAAM,eAAe,EAAE,OAAO,MAAM,CAAC;AAE7C,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;IACvC,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;IAC1C,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,GAAG,WAAW,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzF,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;IACtD,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;IACrC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxD,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3D,UAAU,CAAC,IAAI,sBAAsB,GAAG,IAAI,CAAC;IAC7C,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IAChD,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC;CAClC;AAED,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC;AAEjD,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,MAAM,EAAE,GAAG,YAAY,CAAC;AAE/E,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,WAAW,GAAG,gBAAgB,CAAC;IACvF,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;IAC1D,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC;IACzE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;CAC/B"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { ChartPlugin } from './Chart.js';
|
|
2
|
+
import { SeriesYAxis } from '../core/types.js';
|
|
3
|
+
export interface AnnotationLabelOptions {
|
|
4
|
+
readonly text: string;
|
|
5
|
+
readonly position?: "start" | "center" | "end" | "top" | "bottom" | "left" | "right";
|
|
6
|
+
readonly color?: string;
|
|
7
|
+
readonly font?: string;
|
|
8
|
+
readonly offsetX?: number;
|
|
9
|
+
readonly offsetY?: number;
|
|
10
|
+
}
|
|
11
|
+
export interface AnnotationBase {
|
|
12
|
+
readonly id?: string;
|
|
13
|
+
readonly visible?: boolean;
|
|
14
|
+
readonly yAxis?: SeriesYAxis;
|
|
15
|
+
readonly className?: string;
|
|
16
|
+
readonly label?: string | AnnotationLabelOptions;
|
|
17
|
+
}
|
|
18
|
+
export interface XLineAnnotation extends AnnotationBase {
|
|
19
|
+
readonly type: "x-line";
|
|
20
|
+
readonly x: number;
|
|
21
|
+
readonly color?: string;
|
|
22
|
+
readonly width?: number;
|
|
23
|
+
readonly dash?: string;
|
|
24
|
+
}
|
|
25
|
+
export interface YLineAnnotation extends AnnotationBase {
|
|
26
|
+
readonly type: "y-line";
|
|
27
|
+
readonly y: number;
|
|
28
|
+
readonly color?: string;
|
|
29
|
+
readonly width?: number;
|
|
30
|
+
readonly dash?: string;
|
|
31
|
+
}
|
|
32
|
+
export interface XRangeAnnotation extends AnnotationBase {
|
|
33
|
+
readonly type: "x-range";
|
|
34
|
+
readonly xMin: number;
|
|
35
|
+
readonly xMax: number;
|
|
36
|
+
readonly fillColor?: string;
|
|
37
|
+
readonly borderColor?: string;
|
|
38
|
+
readonly borderWidth?: number;
|
|
39
|
+
}
|
|
40
|
+
export interface YRangeAnnotation extends AnnotationBase {
|
|
41
|
+
readonly type: "y-range";
|
|
42
|
+
readonly yMin: number;
|
|
43
|
+
readonly yMax: number;
|
|
44
|
+
readonly fillColor?: string;
|
|
45
|
+
readonly borderColor?: string;
|
|
46
|
+
readonly borderWidth?: number;
|
|
47
|
+
}
|
|
48
|
+
export interface BoxAnnotation extends AnnotationBase {
|
|
49
|
+
readonly type: "box";
|
|
50
|
+
readonly xMin: number;
|
|
51
|
+
readonly xMax: number;
|
|
52
|
+
readonly yMin: number;
|
|
53
|
+
readonly yMax: number;
|
|
54
|
+
readonly fillColor?: string;
|
|
55
|
+
readonly borderColor?: string;
|
|
56
|
+
readonly borderWidth?: number;
|
|
57
|
+
}
|
|
58
|
+
export interface PointAnnotation extends AnnotationBase {
|
|
59
|
+
readonly type: "point";
|
|
60
|
+
readonly x: number;
|
|
61
|
+
readonly y: number;
|
|
62
|
+
readonly radius?: number;
|
|
63
|
+
readonly color?: string;
|
|
64
|
+
readonly strokeColor?: string;
|
|
65
|
+
readonly strokeWidth?: number;
|
|
66
|
+
readonly shape?: "circle" | "diamond" | "cross";
|
|
67
|
+
}
|
|
68
|
+
export interface LabelAnnotation extends AnnotationBase {
|
|
69
|
+
readonly type: "label";
|
|
70
|
+
readonly x: number;
|
|
71
|
+
readonly y: number;
|
|
72
|
+
readonly text: string;
|
|
73
|
+
readonly color?: string;
|
|
74
|
+
readonly font?: string;
|
|
75
|
+
readonly backgroundColor?: string;
|
|
76
|
+
}
|
|
77
|
+
export type Annotation = XLineAnnotation | YLineAnnotation | XRangeAnnotation | YRangeAnnotation | BoxAnnotation | PointAnnotation | LabelAnnotation;
|
|
78
|
+
export interface AnnotationsPluginOptions {
|
|
79
|
+
readonly annotations?: readonly Annotation[];
|
|
80
|
+
readonly className?: string;
|
|
81
|
+
readonly defaultColor?: string;
|
|
82
|
+
readonly defaultFillColor?: string;
|
|
83
|
+
readonly defaultFont?: string;
|
|
84
|
+
readonly zIndex?: number;
|
|
85
|
+
}
|
|
86
|
+
export interface AnnotationsPlugin extends ChartPlugin {
|
|
87
|
+
add(annotation: Annotation): void;
|
|
88
|
+
remove(id: string): boolean;
|
|
89
|
+
clear(): void;
|
|
90
|
+
setAnnotations(annotations: readonly Annotation[]): void;
|
|
91
|
+
getAnnotations(): readonly Annotation[];
|
|
92
|
+
}
|
|
93
|
+
export declare function annotationsPlugin(options?: AnnotationsPluginOptions): AnnotationsPlugin;
|
|
94
|
+
//# sourceMappingURL=Annotations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Annotations.d.ts","sourceRoot":"","sources":["../../src/ui/Annotations.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/Chart.d.ts
CHANGED
|
@@ -113,6 +113,7 @@ export declare class Chart {
|
|
|
113
113
|
private readonly hoverSubscribers;
|
|
114
114
|
private readonly seriesSubscribers;
|
|
115
115
|
private readonly themeSubscribers;
|
|
116
|
+
private readonly renderSubscribers;
|
|
116
117
|
private currentHover;
|
|
117
118
|
private lastPointerClientX;
|
|
118
119
|
private lastPointerClientY;
|
|
@@ -130,6 +131,7 @@ export declare class Chart {
|
|
|
130
131
|
get yAxisElement(): HTMLElement;
|
|
131
132
|
get y2AxisElement(): HTMLElement;
|
|
132
133
|
get theme(): ResolvedChartTheme;
|
|
134
|
+
getWebGLContext(): WebGL2RenderingContext | null;
|
|
133
135
|
getCamera(yAxis?: SeriesYAxis): Camera2D;
|
|
134
136
|
dataToPlot(x: number, y: number, yAxis?: SeriesYAxis): [number, number];
|
|
135
137
|
clientToData(clientX: number, clientY: number, yAxis?: SeriesYAxis): [number, number] | null;
|
|
@@ -162,6 +164,7 @@ export declare class Chart {
|
|
|
162
164
|
subscribe(event: "hover", callback: (state: ChartHoverState | null) => void): () => void;
|
|
163
165
|
subscribe(event: "serieschange", callback: () => void): () => void;
|
|
164
166
|
subscribe(event: "themechange", callback: () => void): () => void;
|
|
167
|
+
subscribe(event: "render", callback: (chart: Chart) => void): () => void;
|
|
165
168
|
setTheme(theme?: ChartTheme): void;
|
|
166
169
|
setGridVisible(visible: boolean): void;
|
|
167
170
|
getGridVisible(): boolean;
|
|
@@ -205,6 +208,7 @@ export declare class Chart {
|
|
|
205
208
|
private emitHover;
|
|
206
209
|
private emitSeriesChange;
|
|
207
210
|
private emitThemeChange;
|
|
211
|
+
private emitRender;
|
|
208
212
|
private drawDomTextForScreenshot;
|
|
209
213
|
private maxMinMaxSegments;
|
|
210
214
|
private maxBarTriangleBars;
|
package/dist/ui/Chart.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chart.d.ts","sourceRoot":"","sources":["../../src/ui/Chart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAW,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5H,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAKrD,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrF,OAAO,KAAK,EAAE,YAAY,EAAwB,MAAM,kBAAkB,CAAC;AAE3E,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"Chart.d.ts","sourceRoot":"","sources":["../../src/ui/Chart.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "blazeplot",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"author": {
|
|
5
5
|
"name": "Federico Cervelli",
|
|
6
6
|
"url": "https://cervelli.dev"
|
|
@@ -34,6 +34,10 @@
|
|
|
34
34
|
"types": "./dist/plugins/interactions.d.ts",
|
|
35
35
|
"import": "./dist/plugins/interactions.js"
|
|
36
36
|
},
|
|
37
|
+
"./plugins/annotations": {
|
|
38
|
+
"types": "./dist/plugins/annotations.d.ts",
|
|
39
|
+
"import": "./dist/plugins/annotations.js"
|
|
40
|
+
},
|
|
37
41
|
"./package.json": "./package.json"
|
|
38
42
|
},
|
|
39
43
|
"files": [
|
|
@@ -48,6 +52,8 @@
|
|
|
48
52
|
"pages:build": "vite build --config vite.pages.config.ts",
|
|
49
53
|
"preview": "vite preview",
|
|
50
54
|
"bench": "bun scripts/benchmark.ts",
|
|
55
|
+
"bench:scatter": "bun scripts/scatter-profile.ts",
|
|
56
|
+
"bench:report": "bun scripts/benchmark-report.ts",
|
|
51
57
|
"release:patch": "node scripts/release.js patch",
|
|
52
58
|
"release:minor": "node scripts/release.js minor",
|
|
53
59
|
"release:major": "node scripts/release.js major",
|