UNPKG

d3-org-chart-jc

Version:

Highly customizable org chart, created with d3

350 lines (349 loc) 13.3 kB
export class OrgChart { getChartState: () => { id: string; firstDraw: boolean; svgWidth: number; svgHeight: number; scaleExtent: number[]; container: string; defaultTextFill: string; defaultFont: string; ctx: CanvasRenderingContext2D; data: any; duration: number; setActiveNodeCentered: boolean; expandLevel: number; compact: boolean; rootMargin: number; nodeDefaultBackground: string; connections: any[]; lastTransform: { x: number; y: number; k: number; }; nodeId: (d: any) => any; parentNodeId: (d: any) => any; backgroundColor: string; zoomBehavior: any; defs: (state: any, visibleConnections: any) => string; connectionsUpdate: (d: any, i: any, arr: any) => void; linkUpdate: (d: any, i: any, arr: any) => void; nodeUpdate: (d: any, i: any, arr: any) => void; nodeWidth: (d3Node: any) => number; nodeHeight: (d: any) => number; siblingsMargin: (d3Node: any) => number; childrenMargin: (d: any) => number; neightbourMargin: (n1: any, n2: any) => number; compactMarginPair: (d: any) => number; compactMarginBetween: (d3Node: any) => number; onNodeClick: (d: any) => any; linkGroupArc: any; nodeContent: (d: any) => string; layout: string; buttonContent: ({ node, state }: { node: any; state: any; }) => string; layoutBindings: { left: { nodeLeftX: (node: any) => number; nodeRightX: (node: any) => any; nodeTopY: (node: any) => number; nodeBottomY: (node: any) => number; nodeJoinX: (node: any) => any; nodeJoinY: (node: any) => number; linkJoinX: (node: any) => any; linkJoinY: (node: any) => any; linkX: (node: any) => any; linkY: (node: any) => any; linkCompactXStart: (node: any) => any; linkCompactYStart: (node: any) => any; compactLinkMidX: (node: any, state: any) => any; compactLinkMidY: (node: any, state: any) => any; linkParentX: (node: any) => any; linkParentY: (node: any) => any; buttonX: (node: any) => any; buttonY: (node: any) => number; centerTransform: ({ root, rootMargin, centerY, scale, centerX }: { root: any; rootMargin: any; centerY: any; scale: any; centerX: any; }) => string; compactDimension: { sizeColumn: (node: any) => any; sizeRow: (node: any) => any; reverse: (arr: any) => any; }; nodeFlexSize: ({ height, width, siblingsMargin, childrenMargin, state, node }: { height: any; width: any; siblingsMargin: any; childrenMargin: any; state: any; node: any; }) => any[]; zoomTransform: ({ centerY, scale }: { centerY: any; scale: any; }) => string; diagonal: any; swap: (d: any) => void; nodeUpdateTransform: ({ x, y, width, height }: { x: any; y: any; width: any; height: any; }) => string; }; top: { nodeLeftX: (node: any) => number; nodeRightX: (node: any) => number; nodeTopY: (node: any) => number; nodeBottomY: (node: any) => any; nodeJoinX: (node: any) => number; nodeJoinY: (node: any) => any; linkJoinX: (node: any) => any; linkJoinY: (node: any) => any; linkCompactXStart: (node: any) => any; linkCompactYStart: (node: any) => any; compactLinkMidX: (node: any, state: any) => any; compactLinkMidY: (node: any) => any; compactDimension: { sizeColumn: (node: any) => any; sizeRow: (node: any) => any; reverse: (arr: any) => any; }; linkX: (node: any) => any; linkY: (node: any) => any; linkParentX: (node: any) => any; linkParentY: (node: any) => any; buttonX: (node: any) => number; buttonY: (node: any) => any; centerTransform: ({ root, rootMargin, centerY, scale, centerX }: { root: any; rootMargin: any; centerY: any; scale: any; centerX: any; }) => string; nodeFlexSize: ({ height, width, siblingsMargin, childrenMargin, state, node, compactViewIndex }: { height: any; width: any; siblingsMargin: any; childrenMargin: any; state: any; node: any; compactViewIndex: any; }) => any[]; zoomTransform: ({ centerX, scale }: { centerX: any; scale: any; }) => string; diagonal: any; swap: (d: any) => void; nodeUpdateTransform: ({ x, y, width, height }: { x: any; y: any; width: any; height: any; }) => string; }; bottom: { nodeLeftX: (node: any) => number; nodeRightX: (node: any) => number; nodeTopY: (node: any) => number; nodeBottomY: (node: any) => number; nodeJoinX: (node: any) => number; nodeJoinY: (node: any) => number; linkJoinX: (node: any) => any; linkJoinY: (node: any) => number; linkCompactXStart: (node: any) => any; linkCompactYStart: (node: any) => number; compactLinkMidX: (node: any, state: any) => any; compactLinkMidY: (node: any) => any; linkX: (node: any) => any; linkY: (node: any) => any; compactDimension: { sizeColumn: (node: any) => any; sizeRow: (node: any) => any; reverse: (arr: any) => any; }; linkParentX: (node: any) => any; linkParentY: (node: any) => number; buttonX: (node: any) => number; buttonY: (node: any) => number; centerTransform: ({ root, rootMargin, centerY, scale, centerX, chartHeight }: { root: any; rootMargin: any; centerY: any; scale: any; centerX: any; chartHeight: any; }) => string; nodeFlexSize: ({ height, width, siblingsMargin, childrenMargin, state, node }: { height: any; width: any; siblingsMargin: any; childrenMargin: any; state: any; node: any; }) => any[]; zoomTransform: ({ centerX, scale }: { centerX: any; scale: any; }) => string; diagonal: any; swap: (d: any) => void; nodeUpdateTransform: ({ x, y, width, height }: { x: any; y: any; width: any; height: any; }) => string; }; right: { nodeLeftX: (node: any) => number; nodeRightX: (node: any) => number; nodeTopY: (node: any) => number; nodeBottomY: (node: any) => number; nodeJoinX: (node: any) => number; nodeJoinY: (node: any) => number; linkJoinX: (node: any) => number; linkJoinY: (node: any) => any; linkX: (node: any) => any; linkY: (node: any) => any; linkParentX: (node: any) => number; linkParentY: (node: any) => any; buttonX: (node: any) => number; buttonY: (node: any) => number; linkCompactXStart: (node: any) => number; linkCompactYStart: (node: any) => any; compactLinkMidX: (node: any, state: any) => any; compactLinkMidY: (node: any, state: any) => any; centerTransform: ({ root, rootMargin, centerY, scale, centerX, chartWidth }: { root: any; rootMargin: any; centerY: any; scale: any; centerX: any; chartWidth: any; }) => string; nodeFlexSize: ({ height, width, siblingsMargin, childrenMargin, state, node }: { height: any; width: any; siblingsMargin: any; childrenMargin: any; state: any; node: any; }) => any[]; compactDimension: { sizeColumn: (node: any) => any; sizeRow: (node: any) => any; reverse: (arr: any) => any; }; zoomTransform: ({ centerY, scale }: { centerY: any; scale: any; }) => string; diagonal: any; swap: (d: any) => void; nodeUpdateTransform: ({ x, y, width, height }: { x: any; y: any; width: any; height: any; }) => string; }; }; }; actions(actions: any): OrgChart; initializeEnterExitUpdatePattern(): void; getNodeChildren({ data, children, _children }: { data: any; children: any; _children: any; }, nodeStore: any): any; initialZoom(zoomLevel: any): OrgChart; render(): OrgChart; addNode(obj: any): OrgChart; removeNode(nodeId: any): OrgChart; groupBy(array: any, accessor: any, aggegator: any): any; calculateCompactFlexDimensions(root: any): void; calculateCompactFlexPositions(root: any): void; update({ x0, y0, x, y, width, height }: { x0: any; y0: any; x?: number; y?: number; width: any; height: any; }): void; isEdge(): any; hdiagonal(s: any, t: any, m: any): string; diagonal(s: any, t: any, m: any): string; restyleForeignObjectElements(): void; onButtonClick(event: any, d: any): void; setExpansionFlagToChildren({ data, children, _children }: { data: any; children: any; _children: any; }, flag: any): void; expandSomeNodes(d: any): void; updateNodesState(): void; setLayouts({ expandNodesFirst }: { expandNodesFirst?: boolean; }): void; collapse(d: any): void; expand(d: any): void; zoomed(event: any, d: any): void; zoomTreeBounds({ x0, x1, y0, y1, params }: { x0: any; x1: any; y0: any; y1: any; params?: { animate: boolean; scale: boolean; }; }): void; fit({ animate, nodes, scale }?: { animate?: boolean; nodes: any; scale?: boolean; }): OrgChart; setExpanded(id: any, expandedFlag?: boolean): OrgChart; setCentered(nodeId: any): OrgChart; setHighlighted(nodeId: any): OrgChart; setUpToTheRootHighlighted(nodeId: any): OrgChart; clearHighlighting(): void; fullscreen(elem: any): void; zoomIn(): void; zoomOut(): void; toDataURL(url: any, callback: any): void; exportImg({ full, scale, onLoad, save }?: { full?: boolean; scale?: number; onLoad?: (d: any) => any; save?: boolean; }): void; exportSvg(): OrgChart; expandAll(): OrgChart; collapseAll(): OrgChart; downloadImage({ node, scale, isSvg, save, onAlreadySerialized, onLoad }: { node: any; scale?: number; isSvg?: boolean; save?: boolean; onAlreadySerialized?: (d: any) => void; onLoad?: (d: any) => void; }): void; getTextWidth(text: any, { fontSize, fontWeight, defaultFont, ctx }?: { fontSize?: number; fontWeight?: number; defaultFont?: string; ctx: any; }): any; }