UNPKG

fybdp-d3-kg

Version:

Knowledge Graph using React and D3.js

90 lines (89 loc) 2.66 kB
import React, { Component, ReactElement } from 'react'; import { Tooltip, TooltipProps } from '../../common/Tooltip'; import { NodeExtra, Link } from '../utils'; export interface SankeyLinkProps extends Link { /** * Whether the element is active or not. Set internally by `Sankey`. */ active: boolean; /** * Whether to animate the enter/update/exit. */ animated: boolean; /** * Id of Sankey chart. Set internally by `Sankey`. */ chartId: string; /** * CSS class to apply. */ className?: string; /** * Whether the node is disabled. Set internally by `Sankey`. */ disabled: boolean; /** * Whether to use gradient or not. */ gradient?: boolean; /** * Opacity callback for the link. */ opacity: (active: boolean, disabled: boolean) => number; /** * CSS styles to apply. */ style?: object; /** * Tooltip element. */ tooltip: ReactElement<TooltipProps, typeof Tooltip>; /** * Width of the link. Set internally by `Sankey`. */ width: number; /** * Event for when the link is clicked. */ onClick: (event: React.MouseEvent<SVGPathElement>) => void; /** * Event for when the link has mouse enter. */ onMouseEnter: (event: React.MouseEvent<SVGPathElement>) => void; /** * Event for when the link has mouse leave. */ onMouseLeave: (event: React.MouseEvent<SVGPathElement>) => void; } interface SankeyLinkState { hovered?: boolean; } export declare class SankeyLink extends Component<SankeyLinkProps, SankeyLinkState> { static defaultProps: Partial<SankeyLinkProps>; link: React.RefObject<SVGPathElement>; state: SankeyLinkState; getEnter(): { d: string; strokeWidth: number; }; getExit(): { d: string; strokeWidth: number; }; getLink(): { index: number | undefined; y0: number | undefined; y1: number | undefined; value: number; width: number; source: string | number | import("d3-sankey").SankeyNode<NodeExtra, import("../utils").LinkExtra>; target: string | number | import("d3-sankey").SankeyNode<NodeExtra, import("../utils").LinkExtra>; }; getStroke(): string | undefined; onMouseEnter(event: React.MouseEvent<SVGPathElement>): void; onMouseLeave(event: React.MouseEvent<SVGPathElement>): void; renderLink(): JSX.Element; renderTooltipContent(): JSX.Element; render(): JSX.Element; } export {};