added component function and dropdown component