UNPKG

fybdp-d3-kg

Version:

Knowledge Graph using React and D3.js

88 lines (87 loc) 2.54 kB
import React, { PureComponent } from 'react'; import { InterpolationTypes } from '../../common/utils/interpolation'; import { ChartInternalDataShape, ChartInternalShallowDataShape } from '../../common/data'; import { PropFunctionTypes } from '../../common/utils/functions'; export interface LineProps extends PropFunctionTypes { /** * Id set internally by `AreaChart`. */ id: string; /** * Parsed data shape. Set internally by `AreaChart`. */ data: ChartInternalDataShape[]; /** * Width of the chart. Set internally by `AreaChart`. */ width: number; /** * Interpolation for the area. Set internally by `AreaSeries`. */ interpolation: InterpolationTypes; /** * Color for the area. Set internally by `AreaSeries`. */ color: any; /** * D3 scale for X Axis. Set internally by `AreaChart`. */ xScale: any; /** * D3 scale for Y Axis. Set internally by `AreaChart`. */ yScale: any; /** * Index of the area in the series. Set internally by `AreaSeries`. */ index: number; /** * Whether to animate the enter/update/exit. Set internally by `AreaSeries`. */ animated: boolean; /** * Stroke width of the line. */ strokeWidth: number; /** * Show the stroke if there is no value. */ showZeroStroke: boolean; /** * Internal property to identify if there is a area or not. */ hasArea: boolean; } interface LineState { pathLength?: number; } export declare class Line extends PureComponent<LineProps, LineState> { static defaultProps: Partial<LineProps>; state: LineState; ghostPathRef: React.RefObject<SVGPathElement>; componentDidMount(): void; componentDidUpdate(prevProps: LineProps): void; getLinePath(data: ChartInternalShallowDataShape[]): string | null; getCoords(): ChartInternalShallowDataShape[]; getLineEnter(coords: ChartInternalShallowDataShape[]): { d: string | undefined; strokeDashoffset: number; strokeDasharray: string; }; getLineExit(): { d: string | undefined; strokeDasharray: string; strokeDashoffset: number; }; getTransition(): { delay: number; type: string; velocity: number; damping: number; } | { type: boolean; delay: number; }; render(): JSX.Element; } export {};