blazeplot 0.1.11 → 0.1.12
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/dist/index.js +133 -94
- package/dist/index.js.map +1 -1
- package/dist/plugins/legend.js +6 -3
- package/dist/plugins/legend.js.map +1 -1
- package/dist/plugins/tooltip.js +11 -7
- package/dist/plugins/tooltip.js.map +1 -1
- package/dist/ui/AxisOverlay.d.ts +2 -1
- package/dist/ui/AxisOverlay.d.ts.map +1 -1
- package/dist/ui/Chart.d.ts +10 -1
- package/dist/ui/Chart.d.ts.map +1 -1
- package/dist/ui/Legend.d.ts.map +1 -1
- package/dist/ui/Tooltip.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/plugins/legend.js
CHANGED
|
@@ -27,11 +27,14 @@ function i(e = {}) {
|
|
|
27
27
|
let a = document.createElement("div");
|
|
28
28
|
a.className = e.className ?? "blazeplot-legend", a.style.position = "absolute", a.style.zIndex = "20", a.style.pointerEvents = "auto", a.style.padding = "8px 10px", a.style.border = n(e, i), a.style.background = e.backgroundColor ?? i.theme.legendBackgroundColor, a.style.color = e.textColor ?? i.theme.legendTextColor, a.style.font = e.font ?? i.theme.legendFont, a.style.whiteSpace = "pre", a.style.userSelect = "none", t(a, e.position ?? "top-right"), i.rootElement.appendChild(a);
|
|
29
29
|
let o = () => {
|
|
30
|
+
a.style.border = n(e, i), a.style.background = e.backgroundColor ?? i.theme.legendBackgroundColor, a.style.color = e.textColor ?? i.theme.legendTextColor, a.style.font = e.font ?? i.theme.legendFont;
|
|
31
|
+
}, s = () => {
|
|
32
|
+
o();
|
|
30
33
|
let t = i.getSeriesState();
|
|
31
34
|
e.render ? e.render(t, a, i) : r(t, a, i, e.toggleOnClick !== !1, e);
|
|
32
|
-
},
|
|
33
|
-
return
|
|
34
|
-
|
|
35
|
+
}, c = i.subscribe("serieschange", s), l = i.subscribe("themechange", s);
|
|
36
|
+
return s(), () => {
|
|
37
|
+
c(), l(), a.remove();
|
|
35
38
|
};
|
|
36
39
|
} };
|
|
37
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"legend.js","names":[],"sources":["../../src/ui/Legend.ts"],"sourcesContent":["import type { Chart, ChartPlugin, ChartSeriesState } from \"./Chart.js\";\n\nexport interface LegendPluginOptions {\n readonly className?: string;\n readonly position?: \"top-left\" | \"top-right\" | \"bottom-left\" | \"bottom-right\";\n readonly toggleOnClick?: boolean;\n readonly backgroundColor?: string;\n readonly borderColor?: string;\n readonly textColor?: string;\n readonly mutedTextColor?: string;\n readonly font?: string;\n readonly render?: (state: readonly ChartSeriesState[], container: HTMLElement, chart: Chart) => void;\n}\n\nfunction rgba(color: readonly [number, number, number, number]): string {\n return `rgba(${Math.round(color[0] * 255)}, ${Math.round(color[1] * 255)}, ${Math.round(color[2] * 255)}, ${color[3]})`;\n}\n\nfunction applyPosition(el: HTMLElement, position: NonNullable<LegendPluginOptions[\"position\"]>): void {\n el.style.top = position.startsWith(\"top\") ? \"8px\" : \"auto\";\n el.style.bottom = position.startsWith(\"bottom\") ? \"8px\" : \"auto\";\n el.style.left = position.endsWith(\"left\") ? \"8px\" : \"auto\";\n el.style.right = position.endsWith(\"right\") ? \"8px\" : \"auto\";\n}\n\nfunction legendBorder(options: LegendPluginOptions, chart: Chart): string {\n const color = options.borderColor ?? chart.theme.legendBorderColor;\n return color === \"transparent\" ? \"0\" : `1px solid ${color}`;\n}\n\nfunction renderDefaultLegend(\n state: readonly ChartSeriesState[],\n container: HTMLElement,\n chart: Chart,\n toggleOnClick: boolean,\n options: LegendPluginOptions,\n): void {\n container.replaceChildren();\n\n for (const item of state) {\n const row = document.createElement(\"button\");\n row.type = \"button\";\n row.style.display = \"flex\";\n row.style.alignItems = \"center\";\n row.style.gap = \"6px\";\n row.style.border = \"0\";\n row.style.margin = \"0\";\n row.style.padding = \"0\";\n row.style.appearance = \"none\";\n row.style.background = \"transparent\";\n row.style.color = item.visible\n ? options.textColor ?? chart.theme.legendTextColor\n : options.mutedTextColor ?? chart.theme.legendMutedTextColor;\n row.style.font = \"inherit\";\n row.style.textAlign = \"left\";\n row.style.cursor = toggleOnClick ? \"pointer\" : \"default\";\n row.style.opacity = item.visible ? \"1\" : \"0.45\";\n\n const swatch = document.createElement(\"span\");\n swatch.textContent = \"\\u2588\";\n swatch.style.color = rgba(item.color);\n swatch.style.flex = \"0 0 auto\";\n\n const label = document.createElement(\"span\");\n label.textContent = item.name ?? item.id ?? `${item.mode} ${item.index + 1}`;\n\n row.append(swatch, label);\n if (toggleOnClick) {\n row.addEventListener(\"click\", () => {\n chart.setSeriesVisible(item.series, !item.visible);\n });\n }\n container.appendChild(row);\n }\n}\n\nexport function legendPlugin(options: LegendPluginOptions = {}): ChartPlugin {\n return {\n install(chart: Chart) {\n const container = document.createElement(\"div\");\n container.className = options.className ?? \"blazeplot-legend\";\n container.style.position = \"absolute\";\n container.style.zIndex = \"20\";\n container.style.pointerEvents = \"auto\";\n container.style.padding = \"8px 10px\";\n container.style.border = legendBorder(options, chart);\n container.style.background = options.backgroundColor ?? chart.theme.legendBackgroundColor;\n container.style.color = options.textColor ?? chart.theme.legendTextColor;\n container.style.font = options.font ?? chart.theme.legendFont;\n container.style.whiteSpace = \"pre\";\n container.style.userSelect = \"none\";\n applyPosition(container, options.position ?? \"top-right\");\n chart.rootElement.appendChild(container);\n\n const render = (): void => {\n const state = chart.getSeriesState();\n if (options.render) {\n options.render(state, container, chart);\n } else {\n renderDefaultLegend(state, container, chart, options.toggleOnClick !== false, options);\n }\n };\n\n const
|
|
1
|
+
{"version":3,"file":"legend.js","names":[],"sources":["../../src/ui/Legend.ts"],"sourcesContent":["import type { Chart, ChartPlugin, ChartSeriesState } from \"./Chart.js\";\n\nexport interface LegendPluginOptions {\n readonly className?: string;\n readonly position?: \"top-left\" | \"top-right\" | \"bottom-left\" | \"bottom-right\";\n readonly toggleOnClick?: boolean;\n readonly backgroundColor?: string;\n readonly borderColor?: string;\n readonly textColor?: string;\n readonly mutedTextColor?: string;\n readonly font?: string;\n readonly render?: (state: readonly ChartSeriesState[], container: HTMLElement, chart: Chart) => void;\n}\n\nfunction rgba(color: readonly [number, number, number, number]): string {\n return `rgba(${Math.round(color[0] * 255)}, ${Math.round(color[1] * 255)}, ${Math.round(color[2] * 255)}, ${color[3]})`;\n}\n\nfunction applyPosition(el: HTMLElement, position: NonNullable<LegendPluginOptions[\"position\"]>): void {\n el.style.top = position.startsWith(\"top\") ? \"8px\" : \"auto\";\n el.style.bottom = position.startsWith(\"bottom\") ? \"8px\" : \"auto\";\n el.style.left = position.endsWith(\"left\") ? \"8px\" : \"auto\";\n el.style.right = position.endsWith(\"right\") ? \"8px\" : \"auto\";\n}\n\nfunction legendBorder(options: LegendPluginOptions, chart: Chart): string {\n const color = options.borderColor ?? chart.theme.legendBorderColor;\n return color === \"transparent\" ? \"0\" : `1px solid ${color}`;\n}\n\nfunction renderDefaultLegend(\n state: readonly ChartSeriesState[],\n container: HTMLElement,\n chart: Chart,\n toggleOnClick: boolean,\n options: LegendPluginOptions,\n): void {\n container.replaceChildren();\n\n for (const item of state) {\n const row = document.createElement(\"button\");\n row.type = \"button\";\n row.style.display = \"flex\";\n row.style.alignItems = \"center\";\n row.style.gap = \"6px\";\n row.style.border = \"0\";\n row.style.margin = \"0\";\n row.style.padding = \"0\";\n row.style.appearance = \"none\";\n row.style.background = \"transparent\";\n row.style.color = item.visible\n ? options.textColor ?? chart.theme.legendTextColor\n : options.mutedTextColor ?? chart.theme.legendMutedTextColor;\n row.style.font = \"inherit\";\n row.style.textAlign = \"left\";\n row.style.cursor = toggleOnClick ? \"pointer\" : \"default\";\n row.style.opacity = item.visible ? \"1\" : \"0.45\";\n\n const swatch = document.createElement(\"span\");\n swatch.textContent = \"\\u2588\";\n swatch.style.color = rgba(item.color);\n swatch.style.flex = \"0 0 auto\";\n\n const label = document.createElement(\"span\");\n label.textContent = item.name ?? item.id ?? `${item.mode} ${item.index + 1}`;\n\n row.append(swatch, label);\n if (toggleOnClick) {\n row.addEventListener(\"click\", () => {\n chart.setSeriesVisible(item.series, !item.visible);\n });\n }\n container.appendChild(row);\n }\n}\n\nexport function legendPlugin(options: LegendPluginOptions = {}): ChartPlugin {\n return {\n install(chart: Chart) {\n const container = document.createElement(\"div\");\n container.className = options.className ?? \"blazeplot-legend\";\n container.style.position = \"absolute\";\n container.style.zIndex = \"20\";\n container.style.pointerEvents = \"auto\";\n container.style.padding = \"8px 10px\";\n container.style.border = legendBorder(options, chart);\n container.style.background = options.backgroundColor ?? chart.theme.legendBackgroundColor;\n container.style.color = options.textColor ?? chart.theme.legendTextColor;\n container.style.font = options.font ?? chart.theme.legendFont;\n container.style.whiteSpace = \"pre\";\n container.style.userSelect = \"none\";\n applyPosition(container, options.position ?? \"top-right\");\n chart.rootElement.appendChild(container);\n\n const applyTheme = (): void => {\n container.style.border = legendBorder(options, chart);\n container.style.background = options.backgroundColor ?? chart.theme.legendBackgroundColor;\n container.style.color = options.textColor ?? chart.theme.legendTextColor;\n container.style.font = options.font ?? chart.theme.legendFont;\n };\n\n const render = (): void => {\n applyTheme();\n const state = chart.getSeriesState();\n if (options.render) {\n options.render(state, container, chart);\n } else {\n renderDefaultLegend(state, container, chart, options.toggleOnClick !== false, options);\n }\n };\n\n const unsubscribeSeries = chart.subscribe(\"serieschange\", render);\n const unsubscribeTheme = chart.subscribe(\"themechange\", render);\n render();\n\n return () => {\n unsubscribeSeries();\n unsubscribeTheme();\n container.remove();\n };\n },\n };\n}\n"],"mappings":"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"}
|
package/dist/plugins/tooltip.js
CHANGED
|
@@ -24,23 +24,27 @@ function i(e = {}) {
|
|
|
24
24
|
i.className = e.className ?? "blazeplot-tooltip", i.style.position = "absolute", i.style.zIndex = "30", i.style.display = "none", i.style.pointerEvents = "none", i.style.background = e.backgroundColor ?? t.theme.tooltipBackgroundColor, i.style.color = e.textColor ?? t.theme.tooltipTextColor, i.style.font = e.font ?? t.theme.tooltipFont, i.style.padding = "8px 10px", i.style.whiteSpace = "pre", t.rootElement.appendChild(i);
|
|
25
25
|
let a = document.createElement("div");
|
|
26
26
|
a.className = "blazeplot-tooltip-markers", a.style.position = "absolute", a.style.inset = "0", a.style.zIndex = "25", a.style.pointerEvents = "none", t.plotElement.appendChild(a);
|
|
27
|
-
let o = (
|
|
27
|
+
let o = () => {
|
|
28
|
+
i.style.background = e.backgroundColor ?? t.theme.tooltipBackgroundColor, i.style.color = e.textColor ?? t.theme.tooltipTextColor, i.style.font = e.font ?? t.theme.tooltipFont;
|
|
29
|
+
}, s = (t) => {
|
|
28
30
|
if (a.replaceChildren(), !(e.highlight === !1 || !t)) for (let e of t.items) {
|
|
29
31
|
let t = document.createElement("div");
|
|
30
|
-
t.style.position = "absolute", t.style.left = `${e.plotX}px`, t.style.top = `${e.plotY}px`, t.style.width = "10px", t.style.height = "10px", t.style.border = "2px solid #f8fafc", t.style.borderRadius = "999px", t.style.background = n(e.series.style.color), t.style.boxShadow = "0 0 0
|
|
32
|
+
t.style.position = "absolute", t.style.left = `${e.plotX}px`, t.style.top = `${e.plotY}px`, t.style.width = "10px", t.style.height = "10px", t.style.border = "2px solid #f8fafc", t.style.borderRadius = "999px", t.style.background = n(e.series.style.color), t.style.boxShadow = "0 0 0 1px rgba(4, 8, 16, 0.85)", t.style.transform = "translate(-50%, -50%)", a.appendChild(t);
|
|
31
33
|
}
|
|
32
|
-
},
|
|
34
|
+
}, c = (n) => {
|
|
33
35
|
let a = n && (e.mode !== void 0 || e.maxDistancePx !== void 0) ? t.pick(n.clientX, n.clientY, e) : n;
|
|
34
|
-
if (
|
|
36
|
+
if (s(a), !a || a.items.length === 0) {
|
|
35
37
|
i.style.display = "none";
|
|
36
38
|
return;
|
|
37
39
|
}
|
|
38
40
|
e.render ? e.render(a, i, t) : r(a, i, e.formatter);
|
|
39
|
-
let
|
|
41
|
+
let o = t.rootElement.getBoundingClientRect(), c = a.clientX - o.left + (e.offsetX ?? 12), l = a.clientY - o.top + (e.offsetY ?? 12);
|
|
40
42
|
i.style.transform = `translate(${c}px, ${l}px)`, i.style.display = "block";
|
|
43
|
+
}, l = t.subscribe("hover", c), u = t.subscribe("themechange", () => {
|
|
44
|
+
o(), c(t.getHoverState());
|
|
41
45
|
});
|
|
42
|
-
return () => {
|
|
43
|
-
|
|
46
|
+
return o(), () => {
|
|
47
|
+
l(), u(), a.remove(), i.remove();
|
|
44
48
|
};
|
|
45
49
|
} };
|
|
46
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.js","names":[],"sources":["../../src/ui/Tooltip.ts"],"sourcesContent":["import type { Chart, ChartHoverState, ChartPickItem, ChartPickMode, ChartPlugin } from \"./Chart.js\";\n\nexport interface TooltipPluginOptions {\n readonly className?: string;\n readonly mode?: ChartPickMode;\n readonly maxDistancePx?: number;\n readonly offsetX?: number;\n readonly offsetY?: number;\n readonly highlight?: boolean;\n readonly backgroundColor?: string;\n readonly textColor?: string;\n readonly font?: string;\n readonly formatter?: (item: ChartPickItem, state: ChartHoverState) => string;\n readonly render?: (state: ChartHoverState, container: HTMLElement, chart: Chart) => void;\n}\n\nfunction labelOf(item: ChartPickItem): string {\n return item.name ?? item.id ?? `${item.mode} ${item.seriesIndex + 1}`;\n}\n\nfunction formatNumber(value: number): string {\n if (!Number.isFinite(value)) return String(value);\n const abs = Math.abs(value);\n if (abs > 0 && (abs < 1e-3 || abs >= 1e6)) return value.toExponential(3);\n return Number(value.toPrecision(6)).toString();\n}\n\nfunction rgba(color: readonly [number, number, number, number]): string {\n return `rgba(${Math.round(color[0] * 255)}, ${Math.round(color[1] * 255)}, ${Math.round(color[2] * 255)}, ${color[3]})`;\n}\n\nfunction renderDefaultTooltip(\n state: ChartHoverState,\n container: HTMLElement,\n formatter: TooltipPluginOptions[\"formatter\"],\n): void {\n const pad = Math.max(1, ...state.items.map((item) => labelOf(item).length));\n let html = \"\";\n for (const item of state.items) {\n const value = formatter ? formatter(item, state) : `(${formatNumber(item.x)}, ${formatNumber(item.y)})`;\n const color = rgba(item.series.style.color);\n if (html) html += \"<br>\";\n html += `<span style=\"color:${color}\">\\u2588</span> ${labelOf(item).padEnd(pad)} ${value}`;\n }\n container.innerHTML = html;\n}\n\nexport function tooltipPlugin(options: TooltipPluginOptions = {}): ChartPlugin {\n return {\n install(chart: Chart) {\n const container = document.createElement(\"div\");\n container.className = options.className ?? \"blazeplot-tooltip\";\n container.style.position = \"absolute\";\n container.style.zIndex = \"30\";\n container.style.display = \"none\";\n container.style.pointerEvents = \"none\";\n container.style.background = options.backgroundColor ?? chart.theme.tooltipBackgroundColor;\n container.style.color = options.textColor ?? chart.theme.tooltipTextColor;\n container.style.font = options.font ?? chart.theme.tooltipFont;\n container.style.padding = \"8px 10px\";\n container.style.whiteSpace = \"pre\";\n chart.rootElement.appendChild(container);\n\n const markerLayer = document.createElement(\"div\");\n markerLayer.className = \"blazeplot-tooltip-markers\";\n markerLayer.style.position = \"absolute\";\n markerLayer.style.inset = \"0\";\n markerLayer.style.zIndex = \"25\";\n markerLayer.style.pointerEvents = \"none\";\n chart.plotElement.appendChild(markerLayer);\n\n const renderMarkers = (state: ChartHoverState | null): void => {\n markerLayer.replaceChildren();\n if (options.highlight === false || !state) return;\n\n for (const item of state.items) {\n const marker = document.createElement(\"div\");\n marker.style.position = \"absolute\";\n marker.style.left = `${item.plotX}px`;\n marker.style.top = `${item.plotY}px`;\n marker.style.width = \"10px\";\n marker.style.height = \"10px\";\n marker.style.border = \"2px solid #f8fafc\";\n marker.style.borderRadius = \"999px\";\n marker.style.background = rgba(item.series.style.color);\n marker.style.boxShadow = \"0 0 0
|
|
1
|
+
{"version":3,"file":"tooltip.js","names":[],"sources":["../../src/ui/Tooltip.ts"],"sourcesContent":["import type { Chart, ChartHoverState, ChartPickItem, ChartPickMode, ChartPlugin } from \"./Chart.js\";\n\nexport interface TooltipPluginOptions {\n readonly className?: string;\n readonly mode?: ChartPickMode;\n readonly maxDistancePx?: number;\n readonly offsetX?: number;\n readonly offsetY?: number;\n readonly highlight?: boolean;\n readonly backgroundColor?: string;\n readonly textColor?: string;\n readonly font?: string;\n readonly formatter?: (item: ChartPickItem, state: ChartHoverState) => string;\n readonly render?: (state: ChartHoverState, container: HTMLElement, chart: Chart) => void;\n}\n\nfunction labelOf(item: ChartPickItem): string {\n return item.name ?? item.id ?? `${item.mode} ${item.seriesIndex + 1}`;\n}\n\nfunction formatNumber(value: number): string {\n if (!Number.isFinite(value)) return String(value);\n const abs = Math.abs(value);\n if (abs > 0 && (abs < 1e-3 || abs >= 1e6)) return value.toExponential(3);\n return Number(value.toPrecision(6)).toString();\n}\n\nfunction rgba(color: readonly [number, number, number, number]): string {\n return `rgba(${Math.round(color[0] * 255)}, ${Math.round(color[1] * 255)}, ${Math.round(color[2] * 255)}, ${color[3]})`;\n}\n\nfunction renderDefaultTooltip(\n state: ChartHoverState,\n container: HTMLElement,\n formatter: TooltipPluginOptions[\"formatter\"],\n): void {\n const pad = Math.max(1, ...state.items.map((item) => labelOf(item).length));\n let html = \"\";\n for (const item of state.items) {\n const value = formatter ? formatter(item, state) : `(${formatNumber(item.x)}, ${formatNumber(item.y)})`;\n const color = rgba(item.series.style.color);\n if (html) html += \"<br>\";\n html += `<span style=\"color:${color}\">\\u2588</span> ${labelOf(item).padEnd(pad)} ${value}`;\n }\n container.innerHTML = html;\n}\n\nexport function tooltipPlugin(options: TooltipPluginOptions = {}): ChartPlugin {\n return {\n install(chart: Chart) {\n const container = document.createElement(\"div\");\n container.className = options.className ?? \"blazeplot-tooltip\";\n container.style.position = \"absolute\";\n container.style.zIndex = \"30\";\n container.style.display = \"none\";\n container.style.pointerEvents = \"none\";\n container.style.background = options.backgroundColor ?? chart.theme.tooltipBackgroundColor;\n container.style.color = options.textColor ?? chart.theme.tooltipTextColor;\n container.style.font = options.font ?? chart.theme.tooltipFont;\n container.style.padding = \"8px 10px\";\n container.style.whiteSpace = \"pre\";\n chart.rootElement.appendChild(container);\n\n const markerLayer = document.createElement(\"div\");\n markerLayer.className = \"blazeplot-tooltip-markers\";\n markerLayer.style.position = \"absolute\";\n markerLayer.style.inset = \"0\";\n markerLayer.style.zIndex = \"25\";\n markerLayer.style.pointerEvents = \"none\";\n chart.plotElement.appendChild(markerLayer);\n\n const applyTheme = (): void => {\n container.style.background = options.backgroundColor ?? chart.theme.tooltipBackgroundColor;\n container.style.color = options.textColor ?? chart.theme.tooltipTextColor;\n container.style.font = options.font ?? chart.theme.tooltipFont;\n };\n\n const renderMarkers = (state: ChartHoverState | null): void => {\n markerLayer.replaceChildren();\n if (options.highlight === false || !state) return;\n\n for (const item of state.items) {\n const marker = document.createElement(\"div\");\n marker.style.position = \"absolute\";\n marker.style.left = `${item.plotX}px`;\n marker.style.top = `${item.plotY}px`;\n marker.style.width = \"10px\";\n marker.style.height = \"10px\";\n marker.style.border = \"2px solid #f8fafc\";\n marker.style.borderRadius = \"999px\";\n marker.style.background = rgba(item.series.style.color);\n marker.style.boxShadow = \"0 0 0 1px rgba(4, 8, 16, 0.85)\";\n marker.style.transform = \"translate(-50%, -50%)\";\n markerLayer.appendChild(marker);\n }\n };\n\n const render = (state: ChartHoverState | null): void => {\n const effectiveState = state && (options.mode !== undefined || options.maxDistancePx !== undefined)\n ? chart.pick(state.clientX, state.clientY, options)\n : state;\n\n renderMarkers(effectiveState);\n if (!effectiveState || effectiveState.items.length === 0) {\n container.style.display = \"none\";\n return;\n }\n\n if (options.render) {\n options.render(effectiveState, container, chart);\n } else {\n renderDefaultTooltip(effectiveState, container, options.formatter);\n }\n\n const rootRect = chart.rootElement.getBoundingClientRect();\n const x = effectiveState.clientX - rootRect.left + (options.offsetX ?? 12);\n const y = effectiveState.clientY - rootRect.top + (options.offsetY ?? 12);\n container.style.transform = `translate(${x}px, ${y}px)`;\n container.style.display = \"block\";\n };\n\n const unsubscribeHover = chart.subscribe(\"hover\", render);\n const unsubscribeTheme = chart.subscribe(\"themechange\", () => {\n applyTheme();\n render(chart.getHoverState());\n });\n applyTheme();\n return () => {\n unsubscribeHover();\n unsubscribeTheme();\n markerLayer.remove();\n container.remove();\n };\n },\n };\n}\n"],"mappings":"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"}
|
package/dist/ui/AxisOverlay.d.ts
CHANGED
|
@@ -9,12 +9,13 @@ export type AxisOverlayConfig = ChartLayoutConfig;
|
|
|
9
9
|
export declare class AxisOverlay {
|
|
10
10
|
private readonly layout;
|
|
11
11
|
private readonly config;
|
|
12
|
-
private
|
|
12
|
+
private options;
|
|
13
13
|
private xPool;
|
|
14
14
|
private yPool;
|
|
15
15
|
private readonly xTicks;
|
|
16
16
|
private readonly yTicks;
|
|
17
17
|
constructor(layout: ChartLayoutElements, config: AxisOverlayConfig, options?: AxisOverlayOptions);
|
|
18
|
+
setOptions(options: AxisOverlayOptions): void;
|
|
18
19
|
update(camera: Camera2D, axis: AxisController): void;
|
|
19
20
|
dispose(): void;
|
|
20
21
|
private parentForAxis;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AxisOverlay.d.ts","sourceRoot":"","sources":["../../src/ui/AxisOverlay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE/E,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,CAAC;AAElD,qBAAa,WAAW;IAOpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"AxisOverlay.d.ts","sourceRoot":"","sources":["../../src/ui/AxisOverlay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE/E,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,CAAC;AAElD,qBAAa,WAAW;IAOpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,OAAO;IARjB,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;gBAGpB,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,iBAAiB,EAClC,OAAO,GAAE,kBAAuB;IAG1C,UAAU,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAY7C,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI;IAoBpD,OAAO,IAAI,IAAI;IAOf,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,UAAU;CAqEnB"}
|
package/dist/ui/Chart.d.ts
CHANGED
|
@@ -96,13 +96,15 @@ export declare class Chart {
|
|
|
96
96
|
private readonly yTicks;
|
|
97
97
|
private axisOverlay;
|
|
98
98
|
private normalizedAxes;
|
|
99
|
-
private
|
|
99
|
+
private resolvedTheme;
|
|
100
|
+
private _gridVisible;
|
|
100
101
|
private layout;
|
|
101
102
|
private stats;
|
|
102
103
|
private resizeObserver;
|
|
103
104
|
private readonly pluginDisposers;
|
|
104
105
|
private readonly hoverSubscribers;
|
|
105
106
|
private readonly seriesSubscribers;
|
|
107
|
+
private readonly themeSubscribers;
|
|
106
108
|
private currentHover;
|
|
107
109
|
private lastPointerClientX;
|
|
108
110
|
private lastPointerClientY;
|
|
@@ -148,12 +150,18 @@ export declare class Chart {
|
|
|
148
150
|
getHoverState(): ChartHoverState | null;
|
|
149
151
|
subscribe(event: "hover", callback: (state: ChartHoverState | null) => void): () => void;
|
|
150
152
|
subscribe(event: "serieschange", callback: () => void): () => void;
|
|
153
|
+
subscribe(event: "themechange", callback: () => void): () => void;
|
|
154
|
+
setTheme(theme?: ChartTheme): void;
|
|
155
|
+
setGridVisible(visible: boolean): void;
|
|
156
|
+
getGridVisible(): boolean;
|
|
157
|
+
setAxes(axes: ChartOptions["axes"]): void;
|
|
151
158
|
pick(clientX: number, clientY: number, options?: ChartPickOptions): ChartHoverState | null;
|
|
152
159
|
screenshot(options?: ChartScreenshotOptions): Promise<Blob>;
|
|
153
160
|
start(): void;
|
|
154
161
|
stop(): void;
|
|
155
162
|
private render;
|
|
156
163
|
dispose(): void;
|
|
164
|
+
private applyTheme;
|
|
157
165
|
private applyCanvasSize;
|
|
158
166
|
private drawAreaSeries;
|
|
159
167
|
private drawScatterSeries;
|
|
@@ -172,6 +180,7 @@ export declare class Chart {
|
|
|
172
180
|
private refreshHover;
|
|
173
181
|
private emitHover;
|
|
174
182
|
private emitSeriesChange;
|
|
183
|
+
private emitThemeChange;
|
|
175
184
|
private drawDomTextForScreenshot;
|
|
176
185
|
private maxMinMaxSegments;
|
|
177
186
|
private maxBarFallbackBars;
|
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":"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
|
|
1
|
+
{"version":3,"file":"Chart.d.ts","sourceRoot":"","sources":["../../src/ui/Chart.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/Legend.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Legend.d.ts","sourceRoot":"","sources":["../../src/ui/Legend.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEvE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,aAAa,GAAG,cAAc,CAAC;IAC9E,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACtG;AAgED,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"Legend.d.ts","sourceRoot":"","sources":["../../src/ui/Legend.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEvE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,aAAa,GAAG,cAAc,CAAC;IAC9E,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,gBAAgB,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACtG;AAgED,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,WAAW,CA8C3E"}
|
package/dist/ui/Tooltip.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../src/ui/Tooltip.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEpG,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,eAAe,KAAK,MAAM,CAAC;IAC7E,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC1F;AAiCD,wBAAgB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../src/ui/Tooltip.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEpG,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,eAAe,KAAK,MAAM,CAAC;IAC7E,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC1F;AAiCD,wBAAgB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,WAAW,CAwF7E"}
|