summaryrefslogtreecommitdiffstats
path: root/install/ui/doc
diff options
context:
space:
mode:
authorPetr Vobornik <pvoborni@redhat.com>2013-11-13 15:49:25 +0100
committerPetr Vobornik <pvoborni@redhat.com>2014-04-03 12:40:37 +0200
commit0d05a50e19b71cade636d9ca4882e453f614a78c (patch)
tree8b7fee3645c6c08f0a90be334ecd11543a6c2f91 /install/ui/doc
parent66fb4d5e849a049e95d3ef4fcf2b86217488634d (diff)
downloadfreeipa-0d05a50e19b71cade636d9ca4882e453f614a78c.tar.gz
freeipa-0d05a50e19b71cade636d9ca4882e453f614a78c.tar.xz
freeipa-0d05a50e19b71cade636d9ca4882e453f614a78c.zip
webui: field and widget binding refactoring
This is a Web UI wide change. Fields and Widgets binding was refactored to enable proper two-way binding between them. This should allow to have one source of truth (field) for multiple consumers - widgets or something else. One of the goal is to have fields and widget implementations independent on each other. So that one could use a widget without field or use one field for multiple widgets, etc.. Basically a fields logic was split into separate components: - adapters - parsers & formatters - binder Adapters - extract data from data source (FreeIPA RPC command result) - prepares them for commands. Parsers - parse extracted data to format expected by field - parse widget value to format expected by field Formatters - format field value to format suitable for widgets - format field value to format suitable for adapter Binder - is a communication bridge between field and widget - listens to field's and widget's events and call appropriate methods Some side benefits: - better validation reporting in multivalued widget Reviewed-By: Adam Misnyovszki <amisnyov@redhat.com>
Diffstat (limited to 'install/ui/doc')
-rw-r--r--install/ui/doc/categories.json26
1 files changed, 20 insertions, 6 deletions
diff --git a/install/ui/doc/categories.json b/install/ui/doc/categories.json
index 2634986f2..ec0776687 100644
--- a/install/ui/doc/categories.json
+++ b/install/ui/doc/categories.json
@@ -74,8 +74,8 @@
"reg",
"details.details_builder",
"details.section_builder",
- "IPA.field_builder",
- "IPA.widget_builder"
+ "field.field_builder",
+ "widget.widget_builder"
]
},
{
@@ -96,8 +96,10 @@
"IPA.bulk_associator",
"IPA.association_config",
"spec_util",
+ "_base.debug",
"_base.Spec_mod",
- "datetime"
+ "datetime",
+ "util"
]
}
]
@@ -115,7 +117,7 @@
"facet.FacetState",
"facet.action_holder",
"details.facet_policies",
- "IPA.field_container",
+ "field.field_container",
"IPA.widget_container",
"details.update_info",
"details.command_info",
@@ -179,11 +181,23 @@
{
"name": "Fields",
"classes": [
- "IPA.field",
+ "field.field",
"*_field"
]
},
{
+ "name": "Binders",
+ "classes": [
+ "*Binder"
+ ]
+ },
+ {
+ "name": "Adapters",
+ "classes": [
+ "*Adapter"
+ ]
+ },
+ {
"name": "Formatters",
"classes": [
"IPA.formatter",
@@ -193,7 +207,7 @@
{
"name": "Validators",
"classes": [
- "IPA.validator",
+ "field.validator",
"*_validator"
]
}