import React from 'react'; import { resolveAxis, isInPolygon, uid } from './helpers'; import { scaleLinear } from 'd3-scale'; import usePrevious from './usePrevious'; let select_wasMoved = false, maskInterval: any const SelectionUtil = (selectionProps: any) => { //TODO handle padding/margin, other offsets const props = selectionProps.graphProps; const [originalStart, setOriginalStart] = React.useState(null); const [start, setStart] = React.useState(null); const [end, setEnd] = React.useState(null); // const previousPoint = usePrevious(end); const [path, setPath] = React.useState(""); const [canvasItems, setCanvasItems]: any = React.useState({}); const [drawContext, setDrawContext] = React.useState(null); const [maskOpacity, setMaskOpacity] = React.useState(0); const [vYmap, setVYMAP] = React.useState([]); const [vXmap, setVXMAP] = React.useState([]); const normalise = (value: number, max: number, min: number = 0) => (value-min)/(max-min); React.useEffect(() => {//TODO use