In a large, heavy saucepan, over medium heat, cook the onion in the butter until softened, about 5 minutes. Add the flour and stir until smooth. Whisk in the broth and milk, then add the sweet potato, bay leaf, and thyme. Bring to a boil, reduce heat, and simmer, stirring occasionally, 8 minutes. Add the fish or meat and broccoli; simmer 5 minutes for the salmon, 7 minutes for the chicken, or 10 minutes for the pork. Season with the salt and pepper. Ladle into 4 bowls.