UNPKG

fybdp-d3-kg

Version:

Knowledge Graph using React and D3.js

90 lines (89 loc) 2.83 kB
import React, { Component, ReactElement } from 'react'; import { Tooltip, TooltipProps } from '../../common/Tooltip'; import { SankeyLabel, SankeyLabelProps } from '../SankeyLabel'; import { Node } from '../utils'; export interface SankeyNodeProps extends Node { /** * Whether the element is active or not. Set internally by `Sankey`. */ active: boolean; /** * Whether to animate the enter/update/exit. */ animated: boolean; /** * Width of the chart. Set internally by `Sankey`. */ chartWidth?: number; /** * CSS class to apply. */ className?: string; /** * Whether the node is disabled. Set internally by `Sankey`. */ disabled: boolean; /** * Label element. */ label: ReactElement<SankeyLabelProps, typeof SankeyLabel>; /** * Opacity callback for the node. */ opacity: (active: boolean, disabled: boolean) => number; /** * Whether to show the label or not. */ showLabel: boolean; /** * CSS styles to apply. */ style?: object; /** * Tooltip element. */ tooltip: ReactElement<TooltipProps, typeof Tooltip>; /** * Width of the node. Set internally by `Sankey`. */ width?: number; /** * Event for when the node is clicked. */ onClick: (event: React.MouseEvent<SVGRectElement>) => void; /** * Event for when the node has mouse enter. */ onMouseEnter: (event: React.MouseEvent<SVGRectElement>) => void; /** * Event for when the node has mouse leave. */ onMouseLeave: (event: React.MouseEvent<SVGRectElement>) => void; } interface SankeyNodeState { hovered?: boolean; } export declare class SankeyNode extends Component<SankeyNodeProps, SankeyNodeState> { static defaultProps: Partial<SankeyNodeProps>; state: SankeyNodeState; rect: React.RefObject<SVGRectElement>; getNode(): { id: string | undefined; title: string; color: string | undefined; sourceLinks: import("d3-sankey").SankeyLink<import("../utils").NodeExtra, import("../utils").LinkExtra>[] | undefined; targetLinks: import("d3-sankey").SankeyLink<import("../utils").NodeExtra, import("../utils").LinkExtra>[] | undefined; value: number | undefined; index: number | undefined; x0: number | undefined; x1: number | undefined; y0: number | undefined; y1: number | undefined; }; onMouseEnter(event: React.MouseEvent<SVGRectElement>): void; onMouseLeave(event: React.MouseEvent<SVGRectElement>): void; renderNode(): JSX.Element; renderTooltipContent(): JSX.Element; render(): JSX.Element; } export {};