Skip to content

DevIndex: Client-Side "Commits Only" Toggle & Total Commits Implementation #9150

@tobiu

Description

@tobiu

Implement "Commits Only" mode entirely on the client side to avoid data bloat, leveraging Store caching and App Worker performance.

GridContainer.mjs

  • Modify afterSetCommitsOnly:
    • Swap the dataField of the Total column between totalContributions and totalCommits instead of overwriting renderers.
    • This leverages the Store's "Soft Hydration" (via doSort) to cache totalCommits values on the raw objects upon first access.
    • Propagate commitsOnly state to this.footerToolbar.

StatusToolbar.mjs

  • Add commitsOnly_ reactive config.
  • Update updateRowsLabels to compute the "Total Contributions" sum based on the active mode:
    • Default: Sum tc (Total Contributions).
    • Commits Only: Sum cy (Commits Year Array) using reduce.

This ensures zero data payload increase while maintaining high runtime performance.

Metadata

Metadata

Assignees

Labels

aienhancementNew feature or requestperformancePerformance improvements and optimizations

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions