Make a Rule Set Extendable
If you want to let others extend a rule set in your App UI, you need to explicitly mark the rule set as accessible to extensions. This lets someone add a dependency on the extension that contains your App UI, then add new rules and layouts to the rule set, and use business rules to configure dynamic tables and forms.
- To mark a rule set as accessible to extensions when creating a new one in your App UI:
- From the Layouts tab in the left navigator, click + Rule Set, and make sure you select Enable Extensions in the pop-up dialog.
- From any quick start that associates a dynamic component with a new rule set, select Enable Extensions in the Select Rule Set step of the wizard.
- From the Layouts tab in the left navigator, click + Rule Set, and make sure you select Enable Extensions in the pop-up dialog.
- To mark a rule set as accessible after it's been defined:
Note:
After you've made a rule set accessible to extensions, you should avoid renaming its ID. Renaming an ID might break the extensions that use it.Users configuring the page can now see the layout listed as an extendable component in the Properties pane. To see how to customize how the components are listed, see Organize How Constants Are Listed in the Properties Pane.
Some dynamic layouts might only need to use one layout, so there is no need for a rule that has conditions, or for multiple rules. When this is the case, you can edit the rule set's layout.json
file to hide the option to create rules in the Properties pane when users are extending the component. To hide the option to create rules, add @dt.dynamicFormOptions.allowConditions: "off"
to the definition of the component in the JSON file:
"leadsDetailForm": {
"type": "leadsRestApi",
...
"label": "Detail",
"@dt": {
"dynamicFormOptions": {
"allowConditions": "off"
}
}
}
When a user extends the component, the Properties pane displays a simpler pane, where the user can change the layout of the fields in the component: