Default Overrides
There are two mechanisms to override the default behaviour of expanded pages and styling, powered by default anchors, namely:
- Using a project specific expanderExpanderA unit of generation that combines a data tree instance (functional M1 model) with a template to generate an artifact. to override the default behaviour.
- Using model options to get custom anchorsAnchorA marker within generated source code reserved for adding custom logic during re-expansion. instead of the default behaviour.
Overridable anchorsAnchorA marker within generated source code reserved for adding custom logic during re-expansion. are prefixed with branding or customization.
Project specific expander
In your project specific expanderExpanderA unit of generation that combines a data tree instance (functional M1 model) with a template to generate an artifact., you can add a feature called Customizations for example. On this feature you can add feature expandersExpanderA unit of generation that combines a data tree instance (functional M1 model) with a template to generate an artifact. for the potential overrides.
- Customizations.xml
- Customizations.LayoutComponentHtmlExpander.stg
<feature xmlns="https://schemas.normalizedsystems.org/xsd/prime-core/2024/0/4/feature" name="Customizations">
<packageName>net.democritus.angular.customizations</packageName>
<condition>true</condition>
<type name="custom"/>
<expanderFeatures>
<expanderFeature>
<expander name="LayoutComponentHtmlExpander" packageName="net.democritus.angular.angularapp.core.components.layout"/>
</expanderFeature>
</expanderFeatures>
<options>
<feature.mapping.doNotInheritExpanderMapping/>
</options>
</feature>
@hook:customization-header-content:start
<add-html-here/>
@hook:customization-header-content:end
Options
AngularAppIndicates that icons, logo, images, colors need to be implemented custom and expands custom anchorsAnchorA marker within generated source code reserved for adding custom logic during re-expansion. to enable this.
<options>
<angular.hasCustomBranding/>
</options>
AngularAppExpands custom anchorsAnchorA marker within generated source code reserved for adding custom logic during re-expansion. instead of the default header implementation.
<options>
<angular.hasCustomHeaderContent/>
</options>
AngularAppWill give a custom anchorAnchorA marker within generated source code reserved for adding custom logic during re-expansion. to define layout component. Will not expand the default layout component anymore.
<options>
<angular.customization.hasCustomLayout/>
</options>
DataViewExpands custom anchorsAnchorA marker within generated source code reserved for adding custom logic during re-expansion. instead of the default action implementation.
<options>
<angular.hasCustomTableRowActions/>
</options>
DataViewWill give a custom anchorAnchorA marker within generated source code reserved for adding custom logic during re-expansion. to define the inspect action. Will not expand the default action anymore.
<options>
<angular.customization.hasCustomInspect/>
</options>
DataViewWill give a custom anchorAnchorA marker within generated source code reserved for adding custom logic during re-expansion. to define the list header buttons. Will not expand the default buttons anymore.
<options>
<angular.customization.hasCustomListHeaderButtons/>
</options>