refactor(types)!: remove arrowhead and replace with markertype

* remove markerEndId
* rename arrowHeadColor to defaultMarkerColor

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
This commit is contained in:
Braks
2021-12-20 19:29:52 +01:00
parent 6903dcb139
commit 056bcd5dd9
2 changed files with 69 additions and 12 deletions
+67 -4
View File
@@ -1,7 +1,35 @@
import { CSSProperties } from 'vue' import { CSSProperties } from 'vue'
import { ArrowHeadType, Position, Element } from './flow' import { Position, Element } from './flow'
import { GraphNode } from './node' import { GraphNode } from './node'
export enum MarkerType {
Arrow = 'arrow',
ArrowClosed = 'arrowclosed',
}
export interface EdgeMarker {
type: MarkerType
color?: string
width?: number
height?: number
markerUnits?: string
orient?: string
strokeWidth?: number
}
export interface MarkerProps {
id: string
type: MarkerType
color?: string
width?: number
height?: number
markerUnits?: string
orient?: string
strokeWidth?: number
}
export type EdgeMarkerType = string | EdgeMarker
export interface Edge<T = any> extends Element<T> { export interface Edge<T = any> extends Element<T> {
source: string source: string
target: string target: string
@@ -15,14 +43,16 @@ export interface Edge<T = any> extends Element<T> {
labelBgPadding?: [number, number] labelBgPadding?: [number, number]
labelBgBorderRadius?: number labelBgBorderRadius?: number
animated?: boolean animated?: boolean
arrowHeadType?: ArrowHeadType markerStart?: EdgeMarkerType
markerEndId?: string markerEnd?: EdgeMarkerType
updatable?: boolean updatable?: boolean
} }
export interface GraphEdge<T = any> extends Edge<T> { export interface GraphEdge<T = any> extends Edge<T> {
sourceNode: GraphNode sourceNode: GraphNode
targetNode: GraphNode targetNode: GraphNode
selected?: boolean
z?: number
} }
export interface EdgeProps<Data = any> { export interface EdgeProps<Data = any> {
@@ -53,8 +83,9 @@ export interface EdgeProps<Data = any> {
labelBgPadding?: [number, number] labelBgPadding?: [number, number]
labelBgBorderRadius?: number labelBgBorderRadius?: number
animated?: boolean animated?: boolean
arrowHeadType?: ArrowHeadType
updatable?: boolean updatable?: boolean
markerStart?: EdgeMarkerType
markerEnd?: any
} }
export interface SmoothStepEdgeProps<T = any> extends EdgeProps<T> { export interface SmoothStepEdgeProps<T = any> extends EdgeProps<T> {
@@ -67,3 +98,35 @@ export interface EdgePositions {
targetX: number targetX: number
targetY: number targetY: number
} }
export interface GetCenterParams {
sourceX: number
sourceY: number
targetX: number
targetY: number
sourcePosition?: Position
targetPosition?: Position
}
export interface GetBezierPathParams {
sourceX: number
sourceY: number
sourcePosition?: Position
targetX: number
targetY: number
targetPosition?: Position
centerX?: number
centerY?: number
}
export interface GetSmoothStepPathParams {
sourceX: number
sourceY: number
sourcePosition?: Position
targetX: number
targetY: number
targetPosition?: Position
borderRadius?: number
centerX?: number
centerY?: number
}
+2 -8
View File
@@ -53,11 +53,6 @@ export interface Rect extends Dimensions, XYPosition {}
export type SnapGrid = [number, number] export type SnapGrid = [number, number]
export enum ArrowHeadType {
Arrow = 'arrow',
ArrowClosed = 'arrowclosed',
}
export enum BackgroundVariant { export enum BackgroundVariant {
Lines = 'lines', Lines = 'lines',
Dots = 'dots', Dots = 'dots',
@@ -142,8 +137,7 @@ export interface FlowProps<DataNode = any, DataEdge = DataNode> {
defaultPosition?: [number, number] defaultPosition?: [number, number]
translateExtent?: CoordinateExtent translateExtent?: CoordinateExtent
nodeExtent?: CoordinateExtent nodeExtent?: CoordinateExtent
arrowHeadColor?: string defaultMarkerColor?: string
markerEndId?: string
zoomOnScroll?: boolean zoomOnScroll?: boolean
zoomOnPinch?: boolean zoomOnPinch?: boolean
panOnScroll?: boolean panOnScroll?: boolean
@@ -156,4 +150,4 @@ export interface FlowProps<DataNode = any, DataEdge = DataNode> {
loading?: string loading?: string
} }
export type FlowOptions = FlowProps export type FlowOptions<N = any, E = N> = FlowProps<N, E>