mirror of
https://github.com/grafana/grafana.git
synced 2025-02-16 18:34:52 -06:00
* Add and configure eslint-plugin-import * Fix the lint:ts npm command * Autofix + prettier all the files * Manually fix remaining files * Move jquery code in jest-setup to external file to safely reorder imports * Resolve issue caused by circular dependencies within Prometheus * Update .betterer.results * Fix missing // @ts-ignore * ignore iconBundle.ts * Fix missing // @ts-ignore
21 lines
579 B
TypeScript
21 lines
579 B
TypeScript
import usePrevious from 'react-use/lib/usePrevious';
|
|
|
|
import { Config } from './layout';
|
|
import { NodeDatum } from './types';
|
|
|
|
export function useFocusPositionOnLayout(config: Config, nodes: NodeDatum[], focusedNodeId: string | undefined) {
|
|
const prevLayoutGrid = usePrevious(config.gridLayout);
|
|
let focusPosition;
|
|
if (prevLayoutGrid === true && !config.gridLayout && focusedNodeId) {
|
|
const node = nodes.find((n) => n.id === focusedNodeId);
|
|
if (node) {
|
|
focusPosition = {
|
|
x: -node.x!,
|
|
y: -node.y!,
|
|
};
|
|
}
|
|
}
|
|
|
|
return focusPosition;
|
|
}
|