Repository navigation
[TASK] Content Drive: Implement virtual scroll for Content Type Filter #33753
Copy link
Copy link
Closed
Copy link
Labels
Area : FrontendPR changes Angular/TypeScript frontend codePR changes Angular/TypeScript frontend codeCustomer DeployedMergedOKR : Core FeaturesOwned by WillOwned by WillQA : PassedRelease : 26.03.06-01Team : ScoutdotCMS: Content Drive
Description
Problem Statement
Currently, the Content Type Filter in Content Drive uses PrimeNG's p-multiselect component and requires users to search for Content Types. This can be cumbersome when users want to browse available Content Types without knowing the exact name.
Investigation Goal
Determine if virtual scroll can be implemented on the PrimeNG p-multiselect component to enable browsing all Content Types without requiring search functionality.
Research Areas
Technical Feasibility
- Review PrimeNG 17.18.11
p-multiselectvirtual scroll capabilities - Identify current Content Type Filter implementation (component location, data loading mechanism)
- Check if
p-multiselectsupportsvirtualScrollproperty andvirtualScrollItemSize - Assess data loading patterns (pagination, lazy loading, total content type count)
- Test virtual scroll with actual Content Type data structure
PrimeNG Virtual Scroll Configuration
- Investigate
virtualScrollandvirtualScrollItemSizeproperties - Test
virtualScrollOptionsfor custom behavior - Evaluate compatibility with existing
p-multiselectfeatures (filtering, grouping, templates) - Determine if lazy loading is needed for very large datasets
Performance Considerations
- Determine typical number of Content Types in production environments
- Measure current loading performance with large datasets (100+, 500+, 1000+ content types)
- Evaluate memory footprint with virtual scroll vs current implementation
- Test rendering performance with virtual scroll enabled
UX Implications
- Review current user workflow and pain points
- Evaluate how virtual scroll affects search/filter functionality
- Test scrolling behavior and user experience
- Consider accessibility requirements for virtual scroll
- Compare with other
p-multiselectinstances in dotCMS UI
Integration Requirements
- Identify required changes to backend APIs (if any)
- Evaluate impact on existing filter features (search, favorites, recent)
- Assess compatibility with current Content Drive architecture
- Test with custom item templates (if used)
Deliverables
- Technical findings document with:
- PrimeNG virtual scroll capabilities and limitations
- Recommended configuration and implementation approach
- Implementation effort estimate
- Performance benchmarks (with/without virtual scroll)
- Potential risks and mitigation strategies
- Prototype or proof-of-concept demonstrating virtual scroll
- Decision: Go/No-Go recommendation with justification
Acceptance Criteria
- All research areas documented with findings
- PrimeNG virtual scroll feasibility clearly established
- Performance impact quantified with real data
- Implementation approach recommended (or reasons for not proceeding)
- Code examples or prototype provided
- Findings shared with team for decision-making
Time Box
This spike should be time-boxed to 1-3 hours of investigation.
Technical Context
- Component: PrimeNG
p-multiselect(v17.18.11) - Framework: Angular 19.2.9
- Feature: Content Drive - Content Type Filter
Related Components
- Content Drive
- Content Type Filter
- PrimeNG multiselect component
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Area : FrontendPR changes Angular/TypeScript frontend codePR changes Angular/TypeScript frontend codeCustomer DeployedMergedOKR : Core FeaturesOwned by WillOwned by WillQA : PassedRelease : 26.03.06-01Team : ScoutdotCMS: Content Drive
Type
Projects
- StatusShow more project fieldsDone
Activity
[-]SPIKE: Investigate virtual scroll for Content Type Filter in Content Drive[/-][+][SPIKE] Content Dirve: Investigate virtual scroll for Content Type Filter[/+]github-actions commentedon Feb 6, 2026
This issue is stale because it has been open 90 days with no activity. Remove stale label or comment or this will be closed in 30 days.
[-][SPIKE] Content Dirve: Investigate virtual scroll for Content Type Filter[/-][+][SPIKE] Content Drive: Investigate virtual scroll for Content Type Filter[/+][-][SPIKE] Content Drive: Investigate virtual scroll for Content Type Filter[/-][+][TASK] Content Drive: Implement virtual scroll for Content Type Filter[/+]zJaaal commentedon Feb 27, 2026
Note to QA
Since I found a positive resolution to the spike i'm making this task to solve it right away
And also you must test this on modernization env or branch.
8 remaining items
zJaaal commentedon Mar 2, 2026
Lara theme is already merged, so it can be tested against main.
feat(content-drive): #33753 implement virtual scroll with lazy loadin…
dario-daza commentedon Mar 6, 2026
QA PASSED:
The new virtual scrolling functionality is working with the Content Type filter.
QA-virtual-scrolling-contenttype-filter.mp4
A couple of issues where found that are not directly related to the virtual scrolling, but it affect the content drive functionality and appearance, might be related with the modernization updates, all of them are described in this ticket.