@antv/s2
Version:
effective spreadsheet render core lib
27 lines • 1.24 kB
JavaScript
import { InteractionStateName } from '../../../common';
import { updateAllHeaderCellState } from '../../../utils';
function updateDataCellRelevantAxisRowCells(stateName, meta, spreadsheet) {
const { rowId } = meta;
const { facet, interaction } = spreadsheet;
const { rowHeader } = stateName === InteractionStateName.HOVER
? interaction.getHoverHighlight()
: interaction.getSelectedCellHighlight();
if (rowHeader && rowId) {
updateAllHeaderCellState(rowId, facet.getAxisRowCells(), stateName);
}
}
function updateDataCellRelevantAxisColCells(stateName, meta, spreadsheet) {
const { colId } = meta;
const { facet, interaction } = spreadsheet;
const { colHeader } = stateName === InteractionStateName.HOVER
? interaction.getHoverHighlight()
: interaction.getSelectedCellHighlight();
if (colHeader && colId) {
updateAllHeaderCellState(colId, facet.getAxisColCells(), stateName);
}
}
export function updateDataCellRelevantHeaderCells(stateName, meta, spreadsheet) {
updateDataCellRelevantAxisRowCells(stateName, meta, spreadsheet);
updateDataCellRelevantAxisColCells(stateName, meta, spreadsheet);
}
//# sourceMappingURL=handle-interaction.js.map