components as a dep