Created this component for project requirement. I will be modifying this component for a generic use in next versions.