By default, the Core Apps are deployed with the standard settings as part of the product deployment. These out-of-the-box (OOTB) configurations are available in all new tenants. However, you can tailor the custom UI configurations for each tenant to meet specific business needs. For example, you can customize the UI when you want to adjust the OOTB component for a particular domain, entity type, role, or user.
To customize:
-
Download the configuration JSON file attached for reference, or you can copy the JSON from the code block in a specific configuration topic.
-
Upon customizing, upload the JSON file back to the application. For more information, see How to upload UI Configurations.
An Administrator, System Administrator, or users with similar roles can upload the UI configuration files via the UI Config Manage app.
Understand the Folder Structure
All the OOTB UI configurations are located in the "40-commerceUXConfig" folder of the "core-apps-config" repository in the JSON format. The following table lists the folder structure of the "core-apps-config" repository:
| Folder | Description |
|---|---|
| 00-base | Indicates the base configurations of different UI components for all the domains, apps, and entity types. |
| 00-config-context | Indicates the order in which the configuration is applied. By default, the path in OOTB configuration is - "component>>sysDomain>>sysApp>>sysDockingPanel>>sysEntityType". |
| 01-sysdomain | Indicates the default configurations at the domain level. |
| 02-sysapp | Indicates the default configurations at the app level. |
| 03-sysdockingpanel | Indicates the default configurations at the host panel level. |
| 03-sysentitytype | Indicates the default configurations at the entity type level. |
| 04-sysrelationship | Indicates the default configurations at the relationship type level. |
| 05-sysrole | Indicates the default configurations at the role level. |
Guidelines for OOTB configuration
-
The shared repository must be used only for reference and understanding the default OOTB configuration. All the actual customizations must be done in your tenant-specific repository only.
-
All OOTB configurations with the prefix 'sys' indicate these are system default configurations and must not be customized.
-
Configurations are defined per component and provide you the flexibility to override settings at different levels, such as domain, app, and entity type, with minimal configuration changes.
Understand UI Configuration format
The configuration structure consists of the following objects:
-
context - indicates the context for which the configuration is applicable.
-
jsonData – indicates the actual configuration for the defined context.
Sample JSON configuration
{
"metaInfo": {
"dataIndex": "config",
"collectionName": "configObjects",
"responseObjectName": "response"
},
"configObjects": [
{
"id": "global-settings_commerceUXConfig",
"name": "global-settings",
"version": "1.0",
"type": "commerceUXConfig",
"properties": {
"createdByService": "system",
"createdBy": "system"
},
"data": {
"contexts": [
{
"context": {
"component": "global-settings",
"role": "_DEFAULT",
"user": "_DEFAULT"
},
"jsonData": {
"config": {
"environmentIndicator": {
"indicatorVisible": true,
"color": "blue",
"envName": "Sandbox"
}
}
}
}
]
}
}
]
}
Understand Source Version Control
Syndigo leverages Git, which is a fast distributed revision control system, to manage and track configuration changes efficiently.
For information, see:
Get started
To get started with UI configurations:
-
In the GitHub repository (that contains the UI configuration JSON files specific to your tenant) create a folder such as 40-commerceUXConfig for all the custom UI configurations.
-
Identify the coalesce path that you will use for applying all the configurations. The most frequently used coalesce path is - component>>tenant>>domain>>app>> dockingPanel>>entityType>>relationship>>role. For more information, see Set Context Path.
-
Create a folder for the config-context and for each level with numbering as per the coalesce path.
-
1105-pxmUiConfig
- 100-config-context
- 103-tenant
- 104-domain
- 105-app
- 106-dockingpanel
- 107-entitytype
- 108-relationship
- 109-role
- 110-user
-
-
Customize the UI configurations based on your business needs. You can copy the base file from the tenant base folder and customize configurations at each coalesce path, as required.
The numbering of the folder is just for easy understanding of the order in which the configurations are applied; the actual ordering is based on the coalesce path defined in the config context. For more information, see Set Context Path.