Signal migration: CircularHeatmap, Settings, Mappings and Teams Components - #580
Closed
sawankshrma wants to merge 101 commits into
Closed
Signal migration: CircularHeatmap, Settings, Mappings and Teams Components#580sawankshrma wants to merge 101 commits into
sawankshrma wants to merge 101 commits into
Conversation
Remove redundant ?. on non-nullable types across 4 template files & Add *ngIf guards for info[infoTitle] in teams template
Remove unnecessary await fixture.whenStable() that blocks on unresolved MDC animation tasks in headless Chrome. The component data is set synchronously via @input, so no async wait is needed.
wrap mat-icon in span with matListItemIcon to prevent MDC from overriding color=primary. After upgrading to Material 16, the icons became grey from the primary color they were
The --prod flag was deprecated in Angular CLI v12 and removed in later versions. Replaced with --configuration=production and dropped redundant --aot flag (AOT is default for production builds).
Removed eslint-config-standard-with-typescript and its peer deps (eslint-plugin-import, eslint-plugin-n, eslint-plugin-promise) — these were never referenced in .eslintrc.json and caused ERESOLVE peer dependency conflicts during the Angular 17 upgrade, as they pulled in incompatible ESLint/TypeScript version constraints that clashed with @angular-eslint v17. Also bumped eslint-config-prettier from ^8.5.0 to pinned 9.1.0 (v8.10.1 and v9.1.1 were compromised in a July 2025 supply chain attack), eslint-plugin-prettier to ^5.2.0, and prettier to ^3.3.0.
ran command -- ng generate @angular/core:control-flow
…prevent infinite filter loops
…atest i.e, 8.62.1
Upgrade rxjs from 7.5.0 to 7.8.1 to support moduleResolution: bundler (rxjs 7.5.0 lacks an exports field in its package.json, which bundler resolution requires to resolve type declarations).
Run the official Angular schematic (ng generate @angular/core:inject) across the codebase to replace constructor parameter injection with the inject() function, per the @angular-eslint/prefer-inject rule.
Defer detectChanges() in specs to avoid CD timing issues, add null guard in usage component, remove redundant root-level form imports.
…ps/overrides (33→1)
- Remove @angular/platform-browser-dynamic (runtime + types) after completing the bootstrapApplication migration in main.ts - Drop unused packages: js-yaml, @types/js-yaml, @types/node, @angular-eslint/schematics, @typescript-eslint/eslint-plugin, prettier-eslint, qs - Bumped @typescript-eslint/parser to 8.64.0 - Migrate test.ts from BrowserDynamicTestingModule to BrowserTestingModule (static platform)
…endencies + add uuid overides to pnpm-workspace.yaml Suppresses npm/pnpm allow-scripts warnings.
…ocument newer commits
Addresses an unmet peer dependency issue caused by Yarn v1 not auto-installing peer dependencies in the GitHub Actions environment, which caused the @angular-eslint plugin to crash. Pinned to v8.64.0 to match the existing parser version.
…r_20-21 chore: Angular 20 -> 21 migration + Dependency Audits
- Convert 10 mutable properties to signal(), hasTeamsFilter to computed() - Replace ngOnInit/requestAnimationFrame with afterNextRender - Replace theme$ RxJS subscription with effect() - Dissolve destroy$/takeUntil in favor of DestroyRef - Fix order-sensitive group highlight (set-based comparison) - Fix group selection wipe (new object refs via .set()) - Prevent group chip deselection via per-chip selectionChange guard
- Convert allTeams, dataStore, searchTerms in MappingComponent to signal() - Convert meta, dataStoreMaxLevel, selectedMaxLevel, selectedMaxLevelCaption, editingProgressDefinitions, remoteReleaseCheck, selectedDateFormat in SettingsComponent to signal() - Refactor checkForLatestRelease to build state via local vars + single .set()/.update() instead of mutating remoteReleaseCheck fields directly - Remove unused GithubReleaseInfo import and dead checkingLatest/latestReleaseInfo/etc. fields - Convert dataStore, canEdit, teams, teamGroups, progressTitleImplemented, infoTitle, infoTeams, info, allColumnNames, progressColumnNames in TeamsComponent to signal() - Rework onSelectionChanged/onTeamsChanged to derive new info/currentInfo objects and .set() instead of mutating in place - Update mapping/settings/teams templates and specs to call signals as functions
…ping & Team Component to migration-doc
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
description in doc