Having worked with creating components for forms I can tell you this is something we re-invent over and over and over – the same with color pickers.