Uploaded image for project: 'Magnolia UI'
  1. Magnolia UI
  2. MGNLUI-2871

Enhance the behavior of complex fields

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: Major Major
    • 5.2.5
    • 5.2.4
    • forms
    • None

      Several issues are related to the behavior of complex fields (multi, composite and switchable) due to the complexity of the fields or of they transformers.

      As a first step, we will introduce a new way to combine fields.

      Assume that you have a field A (multi) that contains another field B (composite)
      Until now (5.2.4) the field A (his transformer) had to handle the whole data structure, meaning, the Items/Properties used by himself, but also the Items/Properties used by B.
      Due to this limitation we only support two levels of fields and with one combination A(multi) containing a B(composit).
      It is currently not possible to have a:

      • A (composit) containing B (multi)
      • A (composit) containing B (composit)
      • A (multi) containing a B (composit) containing a C (multi)
        ... and so on.

      In order to solve this, we will introduce new transformers that are responsible to handle Items used by the next level of fields.

      • A (multi) creates a list of Items. Eatch Items contains the values of B(Multi). A simply pass the Item to the field B, and B is then responsible to create the Properties/Item needed by himself.
        Doing this we will be able to easily have
      • A (multi) containing B (composit) containing C (multi)....
        in fact any field structure.

      The only limitation is that each entry of a multi field will be stored under a child Item of the field root item.

      Tasks:

      • create the new transformers
      • review the complex fields (multi/composit/switchable) in order to support this new delegation logic (these fields have to stay compatible with the old transformers)
      • add samples
      • review documentation
      • add UI tests

        Acceptance criteria

              ehechinger Eric Hechinger
              ehechinger Eric Hechinger
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Task DoR