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.
@@ -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":";AAgHA,IAAM,IAAS;AAEf,SAAS,EAA0C,GAAiC;CAClF,OAAO,SAAS,gBAAgB,GAAQ,CAAG;AAC7C;AAEA,SAAS,EAAU,GAAmE;CAEpF,OADK,IACE,OAAO,KAAU,WAAW,IAAQ,EAAM,OAD9B;AAErB;AAEA,SAAS,EAAa,GAA4E;CAChG,OAAO,OAAO,KAAU,WAAW,EAAE,MAAM,EAAM,IAAI,KAAS,EAAE,MAAM,GAAG;AAC3E;AAEA,SAAS,EAAU,GAAY,GAAY,GAAY,GAAY,GAAe,GAAuE;CACvJ,IAAM,IAAO,KAAK,IAAI,GAAG,KAAK,IAAI,GAAI,CAAE,CAAC,GACnC,IAAQ,KAAK,IAAI,GAAO,KAAK,IAAI,GAAI,CAAE,CAAC,GACxC,IAAM,KAAK,IAAI,GAAG,KAAK,IAAI,GAAI,CAAE,CAAC,GAClC,IAAS,KAAK,IAAI,GAAQ,KAAK,IAAI,GAAI,CAAE,CAAC;CAEhD,OADI,KAAS,KAAQ,KAAU,IAAY,OACpC;EAAE,GAAG;EAAM,GAAG;EAAK,GAAG,IAAQ;EAAM,GAAG,IAAS;CAAI;AAC7D;AAEA,SAAS,EAAa,GAAW,GAAW,GAAe,GAAyB;CAClF,OAAO,KAAK,KAAK,KAAK,KAAS,KAAK,KAAK,KAAK;AAChD;AAEA,SAAgB,EAAkB,IAAoC,CAAC,GAAsB;CAC3F,IAAI,IAAc,CAAC,GAAI,EAAQ,eAAe,CAAC,CAAE,GAC7C,IAAyB,MACzB,IAAgC,MAC9B,IAAQ,EAAQ,gBAAgB,0BAChC,IAAY,EAAQ,oBAAoB,0BACxC,IAAO,EAAQ,eAAe,8BAE9B,UAA4B;EAChC,AAAI,KAAY,KAAS,EAAO,GAAU,GAAS,GAAa,GAAO,GAAW,CAAI;CACxF;CAEA,OAAO;EACL,QAAQ,GAAc;GAWpB,AAVA,IAAW,GACX,IAAU,EAAI,KAAK,GACnB,EAAQ,UAAU,IAAI,EAAQ,aAAa,uBAAuB,GAClE,EAAQ,MAAM,WAAW,YACzB,EAAQ,MAAM,QAAQ,KACtB,EAAQ,MAAM,QAAQ,QACtB,EAAQ,MAAM,SAAS,QACvB,EAAQ,MAAM,gBAAgB,QAC9B,EAAQ,MAAM,WAAW,UACzB,EAAQ,MAAM,SAAS,OAAO,EAAQ,UAAU,EAAE,GAClD,EAAM,YAAY,YAAY,CAAO;GACrC,IAAM,IAAoB,EAAM,UAAU,gBAAgB,EAAc,CAAC;GAEzE,OADA,EAAc,SACD;IAIX,AAHA,EAAkB,GAClB,GAAS,OAAO,GAChB,IAAU,MACV,IAAW;GACb;EACF;EACA,IAAI,GAA8B;GAEhC,AADA,IAAc,CAAC,GAAG,GAAa,CAAU,GACzC,EAAc;EAChB;EACA,OAAO,GAAqB;GAC1B,IAAM,IAAO,EAAY,QAAQ,MAAe,EAAW,OAAO,CAAE,GAC9D,IAAU,EAAK,WAAW,EAAY;GAK5C,OAJI,MACF,IAAc,GACd,EAAc,IAET;EACT;EACA,QAAc;GAEZ,AADA,IAAc,CAAC,GACf,EAAc;EAChB;EACA,eAAe,GAAmC;GAEhD,AADA,IAAc,CAAC,GAAG,CAAI,GACtB,EAAc;EAChB;EACA,iBAAwC;GACtC,OAAO;EACT;CACF;AACF;AAEA,SAAS,EACP,GACA,GACA,GACA,GACA,GACA,GACM;CACN,IAAM,IAAQ,KAAK,IAAI,GAAG,EAAM,OAAO,WAAW,GAC5C,IAAS,KAAK,IAAI,GAAG,EAAM,OAAO,YAAY;CAEpD,AADA,EAAQ,aAAa,WAAW,OAAO,EAAM,GAAG,GAAQ,GACxD,EAAQ,gBAAgB;CAExB,KAAK,IAAM,KAAc,GACnB,EAAW,YAAY,MAC3B,EAAe,GAAO,GAAS,GAAY,GAAO,GAAQ,GAAc,GAAkB,CAAW;AAEzG;AAEA,SAAS,EACP,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACM;CACN,IAAM,IAAW,EAAM,YAAY,EAAW,SAAS,MAAM,GACvD,KAAS,OAAwB,IAAI,EAAS,SAAS,EAAS,OAAO,EAAS,QAAS,GACzF,KAAS,OAAwB,EAAS,OAAO,MAAM,EAAS,OAAO,EAAS,QAAS,GACzF,IAAQ,EAAI,GAAG;CAGrB,QAFI,EAAW,aAAW,EAAM,UAAU,IAAI,EAAW,SAAS,GAE1D,EAAW,MAAnB;EACE,KAAK,UAAU;GACb,IAAM,IAAI,EAAM,EAAW,CAAC;GAC5B,IAAI,IAAI,KAAK,IAAI,GAAO;GACxB,IAAM,IAAO,EAAI,MAAM;GAOvB,AANA,EAAK,aAAa,MAAM,OAAO,CAAC,CAAC,GACjC,EAAK,aAAa,MAAM,OAAO,CAAC,CAAC,GACjC,EAAK,aAAa,MAAM,GAAG,GAC3B,EAAK,aAAa,MAAM,OAAO,CAAM,CAAC,GACtC,EAAY,GAAM,EAAW,SAAS,GAAc,EAAW,OAAO,EAAW,IAAI,GACrF,EAAM,YAAY,CAAI,GACtB,EAAY,GAAO,EAAW,OAAO,IAAI,GAAG,GAAG,SAAS,GAAc,CAAW;GACjF;EACF;EACA,KAAK,UAAU;GACb,IAAM,IAAI,EAAM,EAAW,CAAC;GAC5B,IAAI,IAAI,KAAK,IAAI,GAAQ;GACzB,IAAM,IAAO,EAAI,MAAM;GAOvB,AANA,EAAK,aAAa,MAAM,GAAG,GAC3B,EAAK,aAAa,MAAM,OAAO,CAAK,CAAC,GACrC,EAAK,aAAa,MAAM,OAAO,CAAC,CAAC,GACjC,EAAK,aAAa,MAAM,OAAO,CAAC,CAAC,GACjC,EAAY,GAAM,EAAW,SAAS,GAAc,EAAW,OAAO,EAAW,IAAI,GACrF,EAAM,YAAY,CAAI,GACtB,EAAY,GAAO,EAAW,OAAO,IAAQ,GAAG,IAAI,GAAG,OAAO,GAAc,CAAW;GACvF;EACF;EACA,KAAK,WAAW;GACd,IAAM,IAAO,EAAU,EAAM,EAAW,IAAI,GAAG,GAAG,EAAM,EAAW,IAAI,GAAG,GAAQ,GAAO,CAAM;GAC/F,IAAI,CAAC,GAAM;GAEX,AADA,EAAW,GAAO,GAAM,EAAW,aAAa,GAAkB,EAAW,aAAa,EAAW,WAAW,GAChH,EAAY,GAAO,EAAW,OAAO,EAAK,IAAI,EAAK,IAAI,IAAK,GAAG,UAAU,GAAc,CAAW;GAClG;EACF;EACA,KAAK,WAAW;GACd,IAAM,IAAO,EAAU,GAAG,EAAM,EAAW,IAAI,GAAG,GAAO,EAAM,EAAW,IAAI,GAAG,GAAO,CAAM;GAC9F,IAAI,CAAC,GAAM;GAEX,AADA,EAAW,GAAO,GAAM,EAAW,aAAa,GAAkB,EAAW,aAAa,EAAW,WAAW,GAChH,EAAY,GAAO,EAAW,OAAO,IAAQ,GAAG,EAAK,IAAI,EAAK,IAAI,IAAK,OAAO,GAAc,CAAW;GACvG;EACF;EACA,KAAK,OAAO;GACV,IAAM,IAAO,EAAU,EAAM,EAAW,IAAI,GAAG,EAAM,EAAW,IAAI,GAAG,EAAM,EAAW,IAAI,GAAG,EAAM,EAAW,IAAI,GAAG,GAAO,CAAM;GACpI,IAAI,CAAC,GAAM;GAEX,AADA,EAAW,GAAO,GAAM,EAAW,aAAa,GAAkB,EAAW,aAAa,EAAW,WAAW,GAChH,EAAY,GAAO,EAAW,OAAO,EAAK,IAAI,EAAK,IAAI,IAAK,EAAK,IAAI,GAAG,UAAU,GAAc,CAAW;GAC3G;EACF;EACA,KAAK,SAAS;GACZ,IAAM,IAAI,EAAM,EAAW,CAAC,GACtB,IAAI,EAAM,EAAW,CAAC,GACtB,IAAS,EAAW,UAAU;GACpC,IAAI,CAAC,EAAa,GAAG,GAAG,GAAO,CAAM,GAAG;GAExC,AADA,EAAa,GAAO,GAAG,GAAG,GAAQ,CAAU,GAC5C,EAAY,GAAO,EAAW,OAAO,IAAI,IAAS,GAAG,IAAI,IAAS,GAAG,SAAS,GAAc,CAAW;GACvG;EACF;EACA,KAAK,SAAS;GACZ,IAAM,IAAI,EAAM,EAAW,CAAC,GACtB,IAAI,EAAM,EAAW,CAAC;GAC5B,IAAI,CAAC,EAAa,GAAG,GAAG,GAAO,CAAM,GAAG;GACxC,EAAsB,GAAO,GAAY,GAAG,GAAG,GAAc,CAAW;GACxE;EACF;CACF;CAEA,EAAQ,YAAY,CAAK;AAC3B;AAEA,SAAS,EAAY,GAAgB,GAAe,IAAgB,GAAG,GAAqB;CAI1F,AAHA,EAAG,aAAa,UAAU,CAAK,GAC/B,EAAG,aAAa,gBAAgB,OAAO,CAAK,CAAC,GAC7C,EAAG,aAAa,QAAQ,MAAM,GAC1B,KAAM,EAAG,aAAa,oBAAoB,CAAI;AACpD;AAEA,SAAS,EAAW,GAAoB,GAAsD,GAAc,GAAiB,IAAsB,GAAS;CAC1J,IAAM,IAAK,EAAI,MAAM;CAUrB,AATA,EAAG,aAAa,KAAK,OAAO,EAAK,CAAC,CAAC,GACnC,EAAG,aAAa,KAAK,OAAO,EAAK,CAAC,CAAC,GACnC,EAAG,aAAa,SAAS,OAAO,EAAK,CAAC,CAAC,GACvC,EAAG,aAAa,UAAU,OAAO,EAAK,CAAC,CAAC,GACxC,EAAG,aAAa,QAAQ,CAAI,GACxB,MACF,EAAG,aAAa,UAAU,CAAM,GAChC,EAAG,aAAa,gBAAgB,OAAO,KAAe,CAAC,CAAC,IAE1D,EAAM,YAAY,CAAE;AACtB;AAEA,SAAS,EAAa,GAAoB,GAAW,GAAW,GAAgB,GAAmC;CACjH,IAAM,IAAO,EAAW,SAAS,0BAC3B,IAAS,EAAW,eAAe,oBACnC,IAAc,EAAW,eAAe;CAC9C,IAAI,EAAW,UAAU,WAAW;EAClC,IAAM,IAAU,EAAI,SAAS;EAK7B,AAJA,EAAQ,aAAa,UAAU,GAAG,EAAE,GAAG,IAAI,EAAO,GAAG,IAAI,EAAO,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAO,GAAG,IAAI,EAAO,GAAG,GAAG,GAC5G,EAAQ,aAAa,QAAQ,CAAI,GACjC,EAAQ,aAAa,UAAU,CAAM,GACrC,EAAQ,aAAa,gBAAgB,OAAO,CAAW,CAAC,GACxD,EAAM,YAAY,CAAO;EACzB;CACF;CAEA,IAAI,EAAW,UAAU,SAAS;EAChC,KAAK,IAAM,CAAC,GAAI,GAAI,GAAI,MAAO,CAAC;GAAC,IAAI;GAAQ;GAAG,IAAI;GAAQ;EAAC,GAAG;GAAC;GAAG,IAAI;GAAQ;GAAG,IAAI;EAAM,CAAC,GAAY;GACxG,IAAM,IAAO,EAAI,MAAM;GAMvB,AALA,EAAK,aAAa,MAAM,OAAO,CAAE,CAAC,GAClC,EAAK,aAAa,MAAM,OAAO,CAAE,CAAC,GAClC,EAAK,aAAa,MAAM,OAAO,CAAE,CAAC,GAClC,EAAK,aAAa,MAAM,OAAO,CAAE,CAAC,GAClC,EAAY,GAAM,GAAM,IAAc,CAAC,GACvC,EAAM,YAAY,CAAI;EACxB;EACA;CACF;CAEA,IAAM,IAAS,EAAI,QAAQ;CAO3B,AANA,EAAO,aAAa,MAAM,OAAO,CAAC,CAAC,GACnC,EAAO,aAAa,MAAM,OAAO,CAAC,CAAC,GACnC,EAAO,aAAa,KAAK,OAAO,CAAM,CAAC,GACvC,EAAO,aAAa,QAAQ,CAAI,GAChC,EAAO,aAAa,UAAU,CAAM,GACpC,EAAO,aAAa,gBAAgB,OAAO,CAAW,CAAC,GACvD,EAAM,YAAY,CAAM;AAC1B;AAEA,SAAS,EAAsB,GAAoB,GAA6B,GAAW,GAAW,GAAsB,GAA2B;CACrJ,IAAM,IAAO,EAAW,GAAO,EAAW,MAAM,GAAG,GAAG,SAAS,EAAW,SAAS,GAAc,EAAW,QAAQ,CAAW;CAC/H,IAAI,EAAW,iBAAiB;EAC9B,IAAM,IAAO,EAAI,MAAM;EAOvB,AANA,EAAK,aAAa,KAAK,OAAO,IAAI,CAAC,CAAC,GACpC,EAAK,aAAa,KAAK,OAAO,IAAI,EAAE,CAAC,GACrC,EAAK,aAAa,SAAS,OAAO,KAAK,IAAI,IAAI,EAAW,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,GAC/E,EAAK,aAAa,UAAU,IAAI,GAChC,EAAK,aAAa,MAAM,GAAG,GAC3B,EAAK,aAAa,QAAQ,EAAW,eAAe,GACpD,EAAM,aAAa,GAAM,CAAI;CAC/B;AACF;AAEA,SAAS,EAAY,GAAoB,GAAoD,GAAW,GAAW,GAAoC,GAAsB,GAA2B;CACtM,IAAM,IAAY,EAAU,CAAK;CACjC,IAAI,CAAC,GAAW;CAChB,IAAM,IAAO,EAAa,CAAK;CAC/B,EAAW,GAAO,GAAW,KAAK,EAAK,WAAW,IAAI,KAAK,EAAK,WAAW,IAAI,GAAQ,EAAK,SAAS,GAAc,EAAK,QAAQ,CAAW;AAC7I;AAEA,SAAS,EAAW,GAAoB,GAAmB,GAAW,GAAW,GAAoC,GAAe,GAA8B;CAChK,IAAM,IAAO,EAAI,MAAM;CAYvB,OAXA,EAAK,cAAc,GACnB,EAAK,aAAa,KAAK,OAAO,CAAC,CAAC,GAChC,EAAK,aAAa,KAAK,OAAO,CAAC,CAAC,GAChC,EAAK,aAAa,QAAQ,CAAK,GAC/B,EAAK,aAAa,QAAQ,CAAI,GAC9B,EAAK,aAAa,eAAe,CAAM,GACvC,EAAK,aAAa,qBAAqB,SAAS,GAChD,EAAK,aAAa,eAAe,QAAQ,GACzC,EAAK,aAAa,UAAU,kBAAkB,GAC9C,EAAK,aAAa,gBAAgB,GAAG,GACrC,EAAM,YAAY,CAAI,GACf;AACT"}
@@ -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":"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"}
1
+ {"version":3,"file":"Renderer.d.ts","sourceRoot":"","sources":["../../src/render/Renderer.ts"],"names":[],"mappings":"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"}
@@ -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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"}
@@ -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;
@@ -1 +1 @@
1
- {"version":3,"file":"Chart.d.ts","sourceRoot":"","sources":["../../src/ui/Chart.ts"],"names":[],"mappings":"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"}
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.1",
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",