Summary
The In Page Navigation feature currently uses Contentment v6.1.1 Data List with a custom IContentmentDataSource (FeatureBlockDataSource) to let editors pick which blocks appear in the navigation. This requires:
- Contentment package dependency
- Custom DataSource class
EnableBuffering() middleware for the Contentment API path
- Workarounds for
GetCurrentContentId() returning 0 in Umbraco 17
Umbraco's native block grid already has a block picker UI using uui-combobox (see umb-property-editor-ui-block-grid-area-type-permission). We should investigate replacing the Contentment approach with the native picker component.
Benefits
- Remove Contentment package dependency for this feature
- Remove custom DataSource, middleware, and workarounds
- Use native Umbraco UI components
- Simpler maintenance long-term
Notes
- The native picker uses
uui-combobox-list with uui-combobox-list-option elements
- Need to investigate whether this can be used as a standalone property editor or needs wrapping
- This is a multi-site change (UmBootstrap → downstream projects)
Summary
The In Page Navigation feature currently uses Contentment v6.1.1 Data List with a custom
IContentmentDataSource(FeatureBlockDataSource) to let editors pick which blocks appear in the navigation. This requires:EnableBuffering()middleware for the Contentment API pathGetCurrentContentId()returning 0 in Umbraco 17Umbraco's native block grid already has a block picker UI using
uui-combobox(seeumb-property-editor-ui-block-grid-area-type-permission). We should investigate replacing the Contentment approach with the native picker component.Benefits
Notes
uui-combobox-listwithuui-combobox-list-optionelements