Skip to content

Platform: FormGroup Layout Technical Design

Frantisek Kolar edited this page Feb 14, 2020 · 7 revisions

Summary

Forms are usually the central part of each business application where we need to be able to work with business entities (e.g: Purchase Order, Invoice,..) to accommodate any business process that is required. To make this happen we should be able to abstract form development to easy to use set of components which hides all the HTML/CSS details and outline proper design structure that each front-end developer can follow.

The main goal is:

  • Abstract form assembly into High-order component to boost developer experience and productivity
  • Built-in multi layouts supports so developer does not have to think how to position element on the page
  • In the future layout should configurable. Either declarative or pluggable by some Layout Manager.
  • Error handling
  • I18n (either built-in or delegated to the application)

Form components structure can be broken down into 3 groups:

  • Form Group (actual Form Layout)
  • Form Field
  • FormControl (input widget)

FormGroup:

  • Manages global Error handling navigation
  • Responsible for layout (multizone)
  • Can pre-set common properties to be applied for whole forms
Clone this wiki locally