[v11.3.x] Actions: Fix interpolation (#96247)

øActions: Fix interpolation  (#96161)

(cherry picked from commit 754351273b)
This commit is contained in:
Adela Almasan
2024-11-12 07:21:59 -06:00
committed by GitHub
parent a8cb62f05a
commit 5cc78ea219
5 changed files with 13 additions and 13 deletions
@@ -307,7 +307,7 @@ const HeatmapHoverCell = ({
links = getDataLinks(linksField, xValueIdx);
}
actions = getFieldActions(data.series!, linksField, replaceVariables);
actions = getFieldActions(data.series!, linksField, replaceVariables, xValueIdx);
}
footer = <VizTooltipFooter dataLinks={links} annotate={annotate} actions={actions} />;
@@ -71,7 +71,7 @@ export const StateTimelineTooltip2 = ({
const field = series.fields[seriesIdx];
const dataIdx = dataIdxs[seriesIdx]!;
const links = getDataLinks(field, dataIdx);
const actions = getFieldActions(series, field, replaceVariables!);
const actions = getFieldActions(series, field, replaceVariables!, dataIdx);
footer = <VizTooltipFooter dataLinks={links} annotate={annotate} actions={actions} />;
}
@@ -24,7 +24,12 @@ export const getDataLinks = (field: Field, rowIdx: number) => {
return links;
};
export const getFieldActions = (dataFrame: DataFrame, field: Field, replaceVars: InterpolateFunction) => {
export const getFieldActions = (
dataFrame: DataFrame,
field: Field,
replaceVars: InterpolateFunction,
rowIndex: number
) => {
if (!config.featureToggles?.vizActions) {
return [];
}
@@ -32,14 +37,9 @@ export const getFieldActions = (dataFrame: DataFrame, field: Field, replaceVars:
const actions: Array<ActionModel<Field>> = [];
const actionLookup = new Set<string>();
const actionsModel = getActions(
dataFrame,
field,
field.state!.scopedVars!,
replaceVars,
field.config.actions ?? [],
{}
);
const actionsModel = getActions(dataFrame, field, field.state!.scopedVars!, replaceVars, field.config.actions ?? [], {
valueRowIndex: rowIndex,
});
actionsModel.forEach((action) => {
const key = `${action.title}`;
@@ -79,7 +79,7 @@ export const TimeSeriesTooltip = ({
const field = series.fields[seriesIdx];
const dataIdx = dataIdxs[seriesIdx]!;
const links = getDataLinks(field, dataIdx);
const actions = getFieldActions(series, field, replaceVariables!);
const actions = getFieldActions(series, field, replaceVariables!, dataIdx);
footer = <VizTooltipFooter dataLinks={links} actions={actions} annotate={annotate} />;
}
@@ -96,7 +96,7 @@ export const XYChartTooltip = ({ dataIdxs, seriesIdx, data, xySeries, dismiss, i
if (isPinned && seriesIdx != null) {
const links = getDataLinks(yField, rowIndex);
const yFieldFrame = data.find((frame) => frame.fields.includes(yField))!;
const actions = getFieldActions(yFieldFrame, yField, replaceVariables);
const actions = getFieldActions(yFieldFrame, yField, replaceVariables, rowIndex);
footer = <VizTooltipFooter dataLinks={links} actions={actions} />;
}