UNPKG

@ifed/component

Version:
56 lines (55 loc) 1.5 kB
import React from 'react'; export interface FlowNode { nodeId: string | number; nodeName: string; status: 'finish' | 'wait' | 'timeout' | 'error' | 'process' | 'suspend'; subFlow?: Flow[]; [anyKey: string]: any; } export interface Flow { key: string | number; nodeInfoList: FlowNode[]; [anyKey: string]: any; } export interface ILine { start: number; end: number; content: React.ReactNode; } export interface SubRenderFunc { (node: FlowNode, data: FlowNode[]): React.ReactNode; } export interface RenderNodeFunc { (item: FlowNode, defaultNode: React.ReactNode): React.ReactNode; } export interface RenderIconFunc { (item: FlowNode): React.ReactNode; } export interface RenderCornerMarkFunc { (item: FlowNode): React.ReactNode; } export interface RenderBracesFunc { (item: FlowNode[]): ILine[]; } export interface ClickFunc { (e: React.MouseEvent, item: FlowNode): void; } export interface FlowProps { data: FlowNode[]; onClick?: ClickFunc; sub?: SubRenderFunc; sup?: SubRenderFunc; renderBraces?: RenderBracesFunc; renderNode?: RenderNodeFunc; renderIcon?: RenderIconFunc; renderCornerMark?: RenderCornerMarkFunc; size?: 'large'; pace?: number; autoHide?: boolean; autoHeightMax?: number; className?: string; } export interface BranchAttributes extends Pick<FlowNode, 'nodeId'> { offset: number; parentIndex: number; }