Я писал подобное на реакте ещё года 4 назад, я знаю, о чем говорю
Поэтому я и говорю, что очень зависит от вводных. Какой бизнес кейс вы решали? Интересно. Типов полей только с десяток можно прикинуть - текст, число, rich text, даты, ренжи, селект, мултиселекты.. У всех них правильно нужно менеджить стейт и потом куда то отправлять. Формы могут требовать дополнительной логики - визарды, скрытые поля в зависимости от условий. Плюс сразу встаёт вопрос как размещать поля по верстке, нужна ли кастомизация, можно ли таскать, можно ли ресайзить