ag-charts-enterprise
Version:
Advanced Charting / Charts supporting Javascript / Typescript / React / Angular / Vue
104 lines (103 loc) • 5.16 kB
TypeScript
import { type AgSankeySeriesNodeStyle, type AgSankeySeriesOptions, _ModuleSupport } from 'ag-charts-community';
import { type DynamicContext, type NormalisedColorType } from 'ag-charts-core';
import { type FlowLinkDatumIndex, type FlowNodeDatumIndex } from '../flow-proportion/flowDatumIndex';
import { FlowProportionSeries } from '../flow-proportion/flowProportionSeries';
import { SankeyLink } from './sankeyLink';
import { type SankeyDatum, type SankeyLinkDatum, type SankeyNodeDatum, type SankeyNodeLabelDatum, SankeySeriesProperties } from './sankeySeriesProperties';
export declare class SankeySeries extends FlowProportionSeries<SankeyNodeDatum, SankeyLinkDatum, SankeyNodeLabelDatum, AgSankeySeriesOptions, SankeySeriesProperties, _ModuleSupport.Rect<SankeyNodeDatum>, SankeyLink<SankeyLinkDatum>> {
static readonly className = "SankeySeries";
static readonly type: "sankey";
properties: SankeySeriesProperties;
constructor(moduleCtx: DynamicContext<_ModuleSupport.ChartRegistry>);
private isLabelEnabled;
protected linkFactory(): SankeyLink<SankeyLinkDatum>;
protected nodeFactory(): _ModuleSupport.Rect<SankeyNodeDatum>;
createNodeData(): {
itemId: string;
nodeData: SankeyDatum[];
labelData: SankeyNodeLabelDatum[];
} | undefined;
private createNode;
private createLink;
private initialiseColumns;
private assignNodesToColumns;
private getNodeColumn;
private getColumnLabelInsets;
private positionNodesInColumnsX;
private createGhostNodesAndColumnDiffs;
private createNodeGhostNodes;
private weightNodes;
private getScaleAndSpacing;
private positionNodesInColumnsY;
private sortAndPositionLinks;
private createNodesNodeData;
private createNodeLabelData;
private getNodeLabelPlacement;
private createLinksNodeData;
private sortNodes;
protected updateLabelSelection(opts: {
labelData: SankeyNodeLabelDatum[];
labelSelection: _ModuleSupport.Selection<SankeyNodeLabelDatum, _ModuleSupport.TransformableText<SankeyNodeLabelDatum>>;
}): _ModuleSupport.Selection<SankeyNodeLabelDatum, _ModuleSupport.TransformableText<SankeyNodeLabelDatum>>;
protected updateLabelNodes(opts: {
labelSelection: _ModuleSupport.Selection<SankeyNodeLabelDatum, _ModuleSupport.TransformableText<SankeyNodeLabelDatum>>;
}): void;
protected updateNodeSelection(opts: {
nodeData: SankeyNodeDatum[];
datumSelection: _ModuleSupport.Selection<SankeyNodeDatum, _ModuleSupport.Rect<SankeyNodeDatum>>;
}): _ModuleSupport.Selection<SankeyNodeDatum, _ModuleSupport.Rect<SankeyNodeDatum>>;
protected getNodeStyle(nodeDatum: Partial<SankeyNodeDatum>, fromNodeDatumIndex: FlowNodeDatumIndex, isHighlight: boolean): Required<import("ag-charts-community").AgSankeySeriesLinkStyle> & Required<AgSankeySeriesNodeStyle> & Partial<AgSankeySeriesOptions<any, unknown> & {
fill: NormalisedColorType;
fillOpacity: number;
stroke: string;
strokeWidth: number;
strokeOpacity: number;
lineDash: number[];
lineDashOffset: number;
opacity: number;
}> & Partial<AgSankeySeriesOptions<any, unknown> & {
fill: NormalisedColorType;
fillOpacity: number;
stroke: string;
strokeWidth: number;
strokeOpacity: number;
lineDash: number[];
lineDashOffset: number;
opacity: number;
}>;
private makeItemStylerParams;
protected updateNodeNodes(opts: {
datumSelection: _ModuleSupport.Selection<SankeyNodeDatum, _ModuleSupport.Rect<SankeyNodeDatum>>;
isHighlight: boolean;
}): void;
private getShapeFillBBox;
protected updateLinkSelection(opts: {
nodeData: SankeyLinkDatum[];
datumSelection: _ModuleSupport.Selection<SankeyLinkDatum, SankeyLink<SankeyLinkDatum>>;
}): _ModuleSupport.Selection<SankeyLinkDatum, SankeyLink<SankeyLinkDatum>>;
protected getLinkStyle(datum: SankeyLinkDatum['datum'], datumIndex: FlowLinkDatumIndex, fromNodeDatumIndex: FlowNodeDatumIndex, isHighlight: boolean): Required<import("ag-charts-community").AgSankeySeriesLinkStyle> & Required<AgSankeySeriesNodeStyle> & Partial<AgSankeySeriesOptions<any, unknown> & {
fill: NormalisedColorType;
fillOpacity: number;
stroke: string;
strokeWidth: number;
strokeOpacity: number;
lineDash: number[];
lineDashOffset: number;
opacity: number;
}> & Partial<AgSankeySeriesOptions<any, unknown> & {
fill: NormalisedColorType;
fillOpacity: number;
stroke: string;
strokeWidth: number;
strokeOpacity: number;
lineDash: number[];
lineDashOffset: number;
opacity: number;
}>;
protected updateLinkNodes(opts: {
datumSelection: _ModuleSupport.Selection<SankeyLinkDatum, SankeyLink<SankeyLinkDatum>>;
isHighlight: boolean;
}): void;
protected computeFocusBounds(node: _ModuleSupport.Rect | SankeyLink): _ModuleSupport.BBox | _ModuleSupport.Path | undefined;
protected hasItemStylers(): boolean;
}