Page History
...
Jira | ||||||||
---|---|---|---|---|---|---|---|---|
|
...
1. Use cases
We need to support such dynamic forms in a much easier way. Collecting some commons requirements:
- populating select options based on the value of another field
- validating a field depending on the value of another field (including within a composite field itself)
- enabling/disabling fields conditionally
- potentially custom handling of any field, via plain Vaadin code
- updating form buttons (enabling/disabling/relabeling)
2. General directions & goals
- Exposing hooks on form-level
- currently only possible on field-level via
FieldFactories
- fields & factories are only aware about themselves, in isolation. They're not aware about other fields and this is harder to do than it should.
- currently only possible on field-level via
- Use more of Vaadin out of the box
- less customizations
- get rid of legacy Vaadin 6.x or client-side code
- Open up APIs to offer more possibilities (data-binding, or dynamic/ cross-field behaviors)
- Reduce technical debt
3. PoC phase
Validate several assumptions from Mika
If all goes well, put it all together at the end
...
- Inspired from
AccessControlField$PathChooserHandler
- Result: small Vaadin application
- see
info.magnolia.dev.acls.AccessControlFieldUI
in Mika's sandbox - opens a Vaadin Window
- field inside the window shares property data-source with text field
- see
...
4. Process
- To be carried out by the VN Core Team
- Try to work in pairs (can still switch afterwards), or alternate between group phases and individual work/thinking
Overview
Content Tools