Есть смысл все свои инпуты и кнопки делать кастомными. Что бы они были максимально универсальны в зависимости от пропсов. Что-бы при построении компонента ты его собирал по максимуму как конструктор
Инпуты, кнопки и вообще все что только можно сделать реюзабельным, это и есть идея реакта