Dashboard module circular dependency issue fix#9413
Dashboard module circular dependency issue fix#9413sntiwari1 merged 5 commits intoSunbird-Ed:release-8.1.0from
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the ✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull Request Overview
This PR addresses circular dependency issues between the DashboardModule and ProgramDashboardModule by creating a new DashboardSharedModule to house commonly shared components, refactoring barrel exports, and updating imports to use direct paths instead of index barrels.
Key Changes:
- Created
DashboardSharedModulecontainingDataTableComponentandFilterComponentthat are shared across modules - Updated
dashboard/index.tsto only export services and interfaces, avoiding module exports that cause circular dependencies - Replaced component barrel imports with direct component imports in routing and module files
Reviewed Changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
program-dashboard.module.ts |
Updated to import DashboardSharedModule instead of DashboardModule to break circular dependency |
program-datasets.component.spec.ts |
Changed import path for ReportService from barrel export to direct services path |
dashboard/index.ts |
Removed component and module exports, now only exports services and interfaces to prevent circular dependencies |
dashboard.module.ts |
Refactored to use direct component imports, imports DashboardSharedModule, removed DataTableComponent and FilterComponent from declarations, updated exports |
dashboard-shared.module.ts |
New shared module created to export DataTableComponent and FilterComponent for use by other modules |
dashboard-routing.module.ts |
Updated to use direct component imports and export DASHBOARD_ROUTES constant for reuse |
package.json |
Upgraded Chart.js from 2.9.4 to 4.4.0 and added chartjs-plugin-annotation, added postinstall script for browserslist |
pull_request.yml |
Added browserslist database update step before dependency installation in CI workflows |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
SunbirdEd - Portal
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Please choose applicable option
Example
Type of change
Please choose appropriate options.
Checklist: