copy method

Implementation

NodeSocketModel copy() {
  return NodeSocketModel(
    id: id,
    nodeId: nodeId,
    type: type,
    position: position.copy(), // assuming Vector2 has copy()
    data: data, // shallow copy; consider deep copy if needed
    connectionLimit: connectionLimit,
  );
}