Simple modules
Simple modules for the resource aggregator framework are provided in the WebDAV folder. You can define modules quickly with a limited set of features with these simple modules.
If you need all features of the framework, you must define your modules through a plugin.xml or JSON file in the contributions folder.
Module quick start
Each sub-directory within the modules folder defines one module.
WebDAV Root
+ modules
+-- module A
+-- module B
+-- ...
+-- module Z
The getting_started_module is predefined so you can start quickly. Add your JavaScript, CSS, or markup file to one of the subfolders, and your resources are integrated into HCL Digital Experience (DX).
You must invalidate the resource aggregator cache before your changes are integrated. Click the Administration menu icon. Then, click Portal Analysis > Theme Analyzer. Then, click Utilities > Control Center > Invalidate cache to invalidate the cache. Auto invalidation recognizes your changes automatically for WebDAV based themes. No further action is required. For more information, see Utilities.
Module directory
After you create your own module by creating a new directory in the modules directory, you must make sure that the module is integrated with HCL DX. Add it to the profile currently set on your page. To verify the profile for any page, you can use the Theme Analyzer Page Explorer. Click the Administration menu icon. Then, click Portal Analysis > Theme Analyzer. Then, click Examine page profile information.
Simple contributions can be of three contribution types, head
, config
, menu
.
For more information, on simple modules read the readme.txt file in the getting_started_module folder.
Simple module directory structure
Simple modules can be customized with the following files and directories.
-
/module-id
Each directory in /modules defines a new module, but does not support versions.
-
/module-id/prereqs.properties
Optional file that defines the
prereqs
of this module. In the file, there is onemodule-id
per new line. Module versions are not supported. For example,module-id module-id
-
/module-id/capabilities.properties
Optional file that defines the capabilities of this module. In the file, there is a property such as style with the
name
andvalue
that is separated by an equal sign. Add one per line.name=value name=value
-
/module-id/localization.properties
Optional file that defines title and description of this module. In the file, there is a property such as style. For example,
title.locale=title description.locale=description
Replace locale and with the local representing code for the location. For example, for the United States, use
en_us
. Replace title with the title of the module. -
/module-id/head
For more information, see Head contribution.
-
/module-id/config
For more information, see Config contribution.
-
/module-id/menu
Files that are stored in this directory are made available to the menu framework.
-
/module-id/menu/*.json
JSON resources that contain the menu definition are served in alphabetical order.
-
-
-
Head contribution
The HEAD folder contains files that are served as head contribution through the resource aggregator framework. Those resources appear in the head tag of the markup served to the browser. - Config contribution
The CONFIG folder contains files that are served as config contribution through the resource aggregator framework. Those resources are usually before the closing body tag.