Skip to content

Latest commit

 

History

History
41 lines (40 loc) · 3.87 KB

Explaining-data-config.md

File metadata and controls

41 lines (40 loc) · 3.87 KB

Explaining data-config

  • project-settings: contains configuration options related to your AEM project
  • project-settings.code-owner: the name of the company/user this code belongs to - will replace ${CODEOWNER} in the template files with this configured value
  • project-settings.bundle-path: path to the java code of your main bundle
  • project-settings.apps-path: path to the /apps root
  • project-settings.component-path: path to the project's components directory, relative to the /apps folder
  • project-settings.model-interface-pkg: Java package for the interface model objects
  • project-settings.model-impl-pkg: Java package for the implementation model objects
  • name: folder name for the component
  • title: human readable component name, also used as the title for dialogs
  • group: component group
  • type: component folder type - content, form, structure
  • options.js: whether to create an empty JS lib for the component (shared with CSS lib)
  • options.jstxt: whether to create the js.txt mapping file within the clientlib. Set to false when this file is not needed within your clientlib
  • options.css: whether to create an empty CSS lib for the component (shared with JS lib)
  • options.csstxt: whether to create the css.txt mapping file within the clientlib. Set to false when this file is not needed within your clientlib
  • options.html: whether to create a default HTML file for the component
  • options.slingmodel: whether to create a sling model for the component
    • Class name is derived from converting "name" prop above to camel case (e.g. "google-maps" -> GoogleMaps/GoogleMapsImpl)
    • Fields are derived from dialog properties (see below)
  • options.content-exporter: whether to configure sling model for content export
  • options.model-adaptables: array of adaptables to include in the Sling Model ('request' and/or 'resource')
  • options.generic-javadoc: whether to create generic javadoc for the getters in the model interface
  • options.properties: properties to create in standard dialog for this component. If empty, no standard dialog will be created. This sample includes one of every possible sling:resourceType
    • options.properties[].field: the property "name" and java variable name.
    • options.properties[].name: (optional) the property "name" in case of special chars like ":".
    • options.properties[].javadoc: the javadoc associated with the property
    • options.properties[].type: the property field type
    • options.properties[].label: the fieldLabel associated with the property
    • options.properties[].description: the fieldDescription associated with the property
    • options.properties[].items: any child items needed for the specified property type
    • options.properties[].attributes: any additional attributes to be associated with property in cq:dialog
    • options.properties[].model-name: (Multifield type Only) the name of the sling model class generated for a multifield property
    • options.properties[].use-existing-model: (Multifield type Only) whether or not to generate a new sling model for the multifield property
    • options.properties[].use-existing-field: (Container type Only) whether or not to generate a new field or reuse already defined one
    • options.properties[].json-expose: by default, the content exporter will ignore all properties unless json-expose is set to true
    • options.properties[].json-property: the json key for the property to be used when content export is configured
    • options.properties[].group-fields-by-name: [true,false,DIALOG_ONLY] prefix folder for all field names
  • options.properties-shared: properties to create in shared dialog for this component. If empty, no shared dialog will be created
  • options.properties-global: properties to create in global dialog for this component. If empty, no global dialog will be created