fix: types
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
import { computed, DefineComponent, defineComponent, inject, PropType, ref } from 'vue';
|
||||
import { Edge, EdgeProps, Position, RevueFlowStore, WrapEdgeProps } from '../../types';
|
||||
import { Edge, Position, RevueFlowStore, WrapEdgeProps } from '../../types';
|
||||
import { onMouseDown } from '../Handle/handler';
|
||||
import { EdgeAnchor } from './EdgeAnchor';
|
||||
|
||||
export default (EdgeComponent: DefineComponent<EdgeProps>) => {
|
||||
export default (EdgeComponent: DefineComponent<WrapEdgeProps>) => {
|
||||
return defineComponent({
|
||||
components: { EdgeComponent },
|
||||
props: {
|
||||
|
||||
@@ -2,10 +2,10 @@
|
||||
* The nodes selection rectangle gets displayed when a user
|
||||
* made a selectio with on or several nodes
|
||||
*/
|
||||
import { isNode } from '../../utils/graph';
|
||||
import { Node, RevueFlowStore } from '../../types';
|
||||
import { computed, defineComponent, inject, PropType } from 'vue';
|
||||
import { Draggable, DraggableEventHandler } from '@braks/revue-draggable';
|
||||
import { isNode } from '../../utils/graph';
|
||||
import { Node, RevueFlowStore } from '../../types';
|
||||
|
||||
export interface NodesSelectionProps {
|
||||
onSelectionDragStart?: (event: MouseEvent, nodes: Node[]) => void;
|
||||
|
||||
@@ -1,23 +1,22 @@
|
||||
import { DefineComponent } from 'vue';
|
||||
import { BezierEdge, StepEdge, SmoothStepEdge, StraightEdge } from '../../components/Edges';
|
||||
import wrapEdge from '../../components/Edges/wrapEdge';
|
||||
import { rectToBox } from '../../utils/graph';
|
||||
|
||||
import { EdgeTypesType, EdgeProps, Position, Node, XYPosition, ElementId, HandleElement, Transform, Edge } from '../../types';
|
||||
import { Component } from 'vue';
|
||||
import { EdgeTypesType, Position, Node, XYPosition, ElementId, HandleElement, Transform, Edge, WrapEdgeProps } from '../../types';
|
||||
|
||||
export function createEdgeTypes(edgeTypes: EdgeTypesType): EdgeTypesType {
|
||||
const standardTypes: EdgeTypesType = {
|
||||
default: wrapEdge(edgeTypes.default || BezierEdge),
|
||||
straight: wrapEdge(edgeTypes.bezier || StraightEdge),
|
||||
step: wrapEdge(edgeTypes.step || StepEdge),
|
||||
smoothstep: wrapEdge(edgeTypes.step || SmoothStepEdge)
|
||||
default: wrapEdge(edgeTypes.default || BezierEdge) as DefineComponent<WrapEdgeProps>,
|
||||
straight: wrapEdge(edgeTypes.bezier || StraightEdge) as DefineComponent<WrapEdgeProps>,
|
||||
step: wrapEdge(edgeTypes.step || StepEdge) as DefineComponent<WrapEdgeProps>,
|
||||
smoothstep: wrapEdge(edgeTypes.step || SmoothStepEdge) as DefineComponent<WrapEdgeProps>
|
||||
};
|
||||
|
||||
const wrappedTypes = {} as EdgeTypesType;
|
||||
const specialTypes: EdgeTypesType = Object.keys(edgeTypes)
|
||||
.filter((k) => !['default', 'bezier'].includes(k))
|
||||
.reduce((res, key) => {
|
||||
res[key] = wrapEdge((edgeTypes[key] || BezierEdge) as Component<EdgeProps>);
|
||||
res[key] = wrapEdge(edgeTypes[key] || BezierEdge) as DefineComponent<WrapEdgeProps>;
|
||||
|
||||
return res;
|
||||
}, wrappedTypes);
|
||||
|
||||
@@ -2,20 +2,21 @@ import DefaultNode from '../../components/Nodes/DefaultNode';
|
||||
import InputNode from '../../components/Nodes/InputNode';
|
||||
import OutputNode from '../../components/Nodes/OutputNode';
|
||||
import wrapNode from '../../components/Nodes/wrapNode';
|
||||
import { NodeTypesType } from '../../types';
|
||||
import { NodeTypesType, WrapNodeProps } from '../../types';
|
||||
import { DefineComponent } from 'vue';
|
||||
|
||||
export function createNodeTypes(nodeTypes: NodeTypesType): NodeTypesType {
|
||||
const standardTypes: NodeTypesType = {
|
||||
input: wrapNode(nodeTypes.input || InputNode),
|
||||
default: wrapNode(nodeTypes.default || DefaultNode),
|
||||
output: wrapNode(nodeTypes.output || OutputNode)
|
||||
input: wrapNode(nodeTypes.input || InputNode) as DefineComponent<WrapNodeProps>,
|
||||
default: wrapNode(nodeTypes.default || DefaultNode) as DefineComponent<WrapNodeProps>,
|
||||
output: wrapNode(nodeTypes.output || OutputNode) as DefineComponent<WrapNodeProps>
|
||||
};
|
||||
|
||||
const wrappedTypes = {} as NodeTypesType;
|
||||
const specialTypes: NodeTypesType = Object.keys(nodeTypes)
|
||||
.filter((k) => !['input', 'default', 'output'].includes(k))
|
||||
.reduce((res, key) => {
|
||||
res[key] = wrapNode(nodeTypes[key] || DefaultNode);
|
||||
res[key] = wrapNode(nodeTypes[key] || DefaultNode) as DefineComponent<WrapNodeProps>;
|
||||
|
||||
return res;
|
||||
}, wrappedTypes);
|
||||
|
||||
@@ -87,7 +87,7 @@ export type HandleType = 'source' | 'target';
|
||||
|
||||
export type NodeTypesType = { [key: string]: DefineComponent<WrapNodeProps> };
|
||||
|
||||
export type EdgeTypesType = NodeTypesType;
|
||||
export type EdgeTypesType = { [key: string]: DefineComponent<WrapEdgeProps> };
|
||||
|
||||
export interface SelectionRect extends Rect {
|
||||
startX: number;
|
||||
|
||||
Reference in New Issue
Block a user