Files
vue-flow/src/components/Nodes/DefaultNode.tsx
T
Braks 3b5857febb fix: typecast edges and nodes
* make GraphView props all required
refactor: renamed "NodesTypeType" to "NodeType" and "EdgesTypeType" to "EdgeType"
2021-08-08 19:28:45 +02:00

41 lines
1.1 KiB
TypeScript

import { defineComponent, PropType } from 'vue';
import Handle from '../../components/Handle';
import { NodeProps, NodeType, Position } from '../../types';
export default defineComponent({
name: 'DefaultNode',
components: { Handle },
inheritAttrs: false,
props: {
data: {
type: Object as PropType<NodeProps['data']>,
required: false,
default: undefined as any
},
isConnectable: {
type: Boolean as PropType<NodeProps['isConnectable']>,
required: false,
default: undefined
},
targetPosition: {
type: String as PropType<NodeProps['targetPosition']>,
required: false,
default: Position.Top
},
sourcePosition: {
type: String as PropType<NodeProps['sourcePosition']>,
required: false,
default: Position.Bottom
}
},
setup(props) {
return () => (
<>
<Handle type="target" position={props.targetPosition} isConnectable={props.isConnectable} />
{props.data?.label}
<Handle type="source" position={props.sourcePosition} isConnectable={props.isConnectable} />
</>
);
}
}) as NodeType;