From cd6a2c431e8c9f5f3e50a64047d21be336a208cc Mon Sep 17 00:00:00 2001 From: Petr Vobornik Date: Oct 16 2013 16:08:17 +0000 Subject: Configuration for JSDuck documentation generator Installation: https://github.com/senchalabs/jsduck/wiki/Installation Basically it requires ruby and jsduck gem. Usage: $ cd install/ui/doc $ make Documentation will be generated into: install/ui/build/code_doc directory --- diff --git a/install/ui/doc/Makefile b/install/ui/doc/Makefile new file mode 100644 index 0000000..14106fb --- /dev/null +++ b/install/ui/doc/Makefile @@ -0,0 +1,5 @@ +all: + jsduck --config config.json + +clean: + @rm -rf ../build/code_doc diff --git a/install/ui/doc/categories.json b/install/ui/doc/categories.json new file mode 100644 index 0000000..ad2c5a0 --- /dev/null +++ b/install/ui/doc/categories.json @@ -0,0 +1,223 @@ +[ + { + "name": "Application Core", + "groups": [ + { + "name": "General", + "classes": [ + "IPA.object", + "IPA.observer", + "IPA.command", + "IPA.batch_command", + "IPA.concurrent_command", + "entity.entity" + ] + }, + { + "name": "Application controller and Phases", + "classes": [ + "phases", + "_base.Phase_controller*", + "Application_controller", + "app", + "plugin_loader", + "menu", + "navigation", + "config" + ] + }, + { + "name": "Navigation", + "classes": [ + "navigation.*" + ] + }, + { + "name": "Facets", + "classes": [ + "facet.facet", + "*_facet" + ] + }, + { + "name": "Dialogs", + "classes": [ + "IPA.dialog", + "IPA.opened_dialogs", + "IPA.dialog_button", + "IPA.confirm_mixin", + "*_dialog" + ] + }, + { + "name": "Entity policies", + "classes": [ + "entity.*_policy" + ] + }, + { + "name": "Entity internals", + "classes": [ + "entity.entity_builder", + "entity.entity_policies" + ] + }, + { + "name": "Build", + "classes": [ + "_base.Builder", + "_base.Construct_registry", + "_base.Singleton_registry", + "_base.construct", + "builder", + "reg", + "details.details_builder", + "details.section_builder", + "IPA.field_builder", + "IPA.widget_builder" + ] + }, + { + "name": "Metadata & Text providers", + "classes": [ + "_base.Provider", + "_base.Search_provider", + "_base.i18n", + "metadata", + "text" + ] + }, + { + "name": "Utils", + "classes": [ + "IPA.associator", + "IPA.serial_associator", + "IPA.bulk_associator", + "IPA.association_config", + "spec_util", + "_base.Spec_mod" + ] + } + ] + }, + { + "name": "Facet and Dialog Components", + "groups": [ + { + "name": "Facet internals", + "classes": [ + "facet.facet_header", + "facet.facet_title", + "facet.facet_group", + "facet.state", + "facet.FacetState", + "facet.action_holder", + "details.facet_policies", + "IPA.field_container", + "IPA.widget_container", + "details.update_info", + "details.command_info", + "details.field_info", + "details.update_info_builder", + "details.command_builder" + ] + }, + { + "name": "Facet actions", + "classes": [ + "facet.action", + "*_action" + ] + }, + { + "name": "Facet policies", + "classes": [ + "*facet_policy", + "IPA.hide_empty_row_policy", + "IPA.permission_target_policy" + ] + }, + { + "name": "Evaluators & Summaries", + "classes": [ + "*_evaluator", + "details.enabled_summary_cond", + "details.disabled_summary_cond" + ] + }, + + { + "name": "Widgets", + "classes": [ + "IPA.widget", + "*_widget", + "widgets.*", + "IPA.action_panel" + ] + }, + { + "name": "Sections and layout widgets", + "classes": [ + "IPA.layout", + "*_section", + "*_layout", + "IPA.details_table_section_nc" + ] + }, + { + "name": "Widget mixins, utils and related", + "classes": [ + "IPA.option_widget_base", + "IPA.column", + "IPA.html_util" + ] + }, + { + "name": "Fields", + "classes": [ + "IPA.field", + "*_field" + ] + }, + { + "name": "Formatters", + "classes": [ + "IPA.formatter", + "*_formatter" + ] + }, + { + "name": "Validators", + "classes": [ + "IPA.validator", + "*_validator" + ] + } + ] + }, + { + "name": "Modules", + "groups": [ + { + "name": "Core", + "classes": [ + "IPA", + "association", + "details", + "entity", + "facet", + "field", + "ordered_map", + "widget" + ] + }, + { + "name": "Plugins", + "classes": [ + "aci", + "user" + ] + } + ] + } +] \ No newline at end of file diff --git a/install/ui/doc/config.json b/install/ui/doc/config.json new file mode 100644 index 0000000..c744fd6 --- /dev/null +++ b/install/ui/doc/config.json @@ -0,0 +1,13 @@ +{ + "--title": "FreeIPA Web UI Documentation", + "--categories": "categories.json", + "--guides": "guides.json", + "--css": ["doc.css"], + "--external": ["jQuery", "Store", "QueryResult", "Stateful", "Evented", + "XMLHttpRequest", "Promise"], + "--warnings": ["-link", "-no_doc"], + "--": [ + "../src/freeipa/" + ], + "--output": "../build/code_doc" +} diff --git a/install/ui/doc/doc.css b/install/ui/doc/doc.css new file mode 100644 index 0000000..be74058 --- /dev/null +++ b/install/ui/doc/doc.css @@ -0,0 +1,4 @@ +code { + background-color: #F7F7F9; + color: #DD1144; +} \ No newline at end of file diff --git a/install/ui/doc/guides.json b/install/ui/doc/guides.json new file mode 100644 index 0000000..466184d --- /dev/null +++ b/install/ui/doc/guides.json @@ -0,0 +1,7 @@ +[ + { + "title": "FreeIPA Web UI Guides", + "items": [ + ] + } +] \ No newline at end of file