Init commit

This commit is contained in:
NikitaKalitov
2026-07-13 15:44:13 +03:00
commit 5b6bdc0a1f
22 changed files with 2193 additions and 0 deletions
+46
View File
@@ -0,0 +1,46 @@
import { Handle, Position, type Node, type NodeProps } from '@xyflow/react';
import type { DiagramNodeData, NodeKind } from './types';
type ShapeNode = Node<DiagramNodeData, NodeKind>;
function ShapeHandles() {
return (
<>
<Handle type="target" position={Position.Left} />
<Handle type="source" position={Position.Right} />
</>
);
}
function TaskNode({ data }: NodeProps<ShapeNode>) {
return (
<div className="diagram-node diagram-node--task">
<ShapeHandles />
<span>{data.label}</span>
</div>
);
}
function GatewayNode({ data }: NodeProps<ShapeNode>) {
return (
<div className="diagram-node diagram-node--gateway">
<ShapeHandles />
<span>{data.label}</span>
</div>
);
}
function EventNode({ data }: NodeProps<ShapeNode>) {
return (
<div className="diagram-node diagram-node--event">
<ShapeHandles />
<span>{data.label}</span>
</div>
);
}
export const nodeTypes = {
task: TaskNode,
gateway: GatewayNode,
event: EventNode,
};