Skip to content

Commit

Permalink
v5.5.9
Browse files Browse the repository at this point in the history
  • Loading branch information
novykh committed Jan 28, 2025
1 parent 3f975a1 commit 11f1343
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 8 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@netdata/charts",
"version": "5.5.8",
"version": "5.5.9",
"description": "Netdata frontend SDK and chart utilities",
"main": "dist/index.js",
"module": "dist/es6/index.js",
Expand Down
22 changes: 16 additions & 6 deletions src/chartLibraries/dygraph/index.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import Dygraph from "dygraphs"
import makeChartUI from "@/sdk/makeChartUI"
import makeResizeObserver from "@/helpers/makeResizeObserver"
import makeExecuteLatest from "@/helpers/makeExecuteLatest"
import { isHeatmap } from "@/helpers/heatmap"
import {
makeLinePlotter,
Expand All @@ -26,6 +27,7 @@ export default (sdk, chart) => {
let hoverX = null
let resizeObserver = null
let overlays = null
let executeLatest = null

const mount = element => {
if (dygraph) return
Expand All @@ -38,6 +40,8 @@ export default (sdk, chart) => {
const attributes = chart.getAttributes()
const { data, labels } = chart.getPayload()

executeLatest = makeExecuteLatest()

const isEmpty = attributes.outOfLimits || data.length === 0

dygraph = new Dygraph(element, isEmpty ? [[0]] : data, {
Expand All @@ -47,22 +51,26 @@ export default (sdk, chart) => {
labels: isEmpty ? ["X"] : labels,

dateWindow: chart.getDateWindow(),
clickCallback: (...args) => chartUI.trigger("click", ...args),
highlightCallback: (...args) => chartUI.trigger("highlightCallback", ...args),
unhighlightCallback: () => chartUI.trigger("unhighlightCallback"),
clickCallback: executeLatest.add((...args) => chartUI.trigger("click", ...args)),
highlightCallback: executeLatest.add((...args) =>
chartUI.trigger("highlightCallback", ...args)
),
unhighlightCallback: executeLatest.add(() => chartUI.trigger("unhighlightCallback")),
drawCallback: (...args) => chartUI.trigger("drawCallback", ...args),
underlayCallback: (...args) => chartUI.trigger("underlayCallback", ...args),
underlayCallback: executeLatest.add((...args) =>
chartUI.trigger("underlayCallback", ...args)
),
interactionModel: {
willDestroyContextMyself: true,
mouseout: (...args) => chartUI.trigger("mouseout", ...args),
mousedown: (...args) => chartUI.trigger("mousedown", ...args),
mousedown: executeLatest.add((...args) => chartUI.trigger("mousedown", ...args)),
mousemove: (...args) => chartUI.trigger("mousemove", ...args),
mouseover: (...args) => chartUI.trigger("mouseover", ...args),
mouseup: (...args) => chartUI.trigger("mouseup", ...args),
touchstart: (...args) => chartUI.trigger("touchstart", ...args),
touchmove: (...args) => chartUI.trigger("touchmove", ...args),
touchend: (...args) => chartUI.trigger("touchend", ...args),
dblclick: (...args) => chartUI.trigger("dblclick", ...args),
dblclick: executeLatest.add((...args) => chartUI.trigger("dblclick", ...args)),
wheel: (...args) => chartUI.trigger("wheel", ...args),
},
series: {
Expand Down Expand Up @@ -415,6 +423,8 @@ export default (sdk, chart) => {
const unmount = () => {
if (!dygraph) return

if (executeLatest) executeLatest.clear()

resizeObserver()
listeners.forEach(listener => listener())
listeners = []
Expand Down
12 changes: 11 additions & 1 deletion src/components/filterToolbox/columns.js
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,15 @@ export const labelColumn = fallbackExpandKey => ({
<Color id={row.original.value} />
<TextSmall
strong
onClick={!row.original.disabled ? row.getToggleSelectedHandler() : undefined}
onClick={
!row.original.disabled
? e => {
e.preventDefault()
e.stopPropagation()
row.getToggleSelectedHandler()(e)
}
: undefined
}
cursor={row.original.disabled ? "default" : "pointer"}
whiteSpace="normal"
wordBreak="break-word"
Expand All @@ -55,6 +63,8 @@ export const labelColumn = fallbackExpandKey => ({
metricsByValue.default
}
onClick={e => {
e.preventDefault()
e.stopPropagation()
row.getToggleExpandedHandler()(e)
setTimeout(() => e.target.scrollIntoView({ behavior: "smooth", block: "nearest" }))
}}
Expand Down

0 comments on commit 11f1343

Please sign in to comment.