Skip to content

Upgrade the Angular client to 22 with Vitest - #879

Draft
bracyw wants to merge 1 commit into
developfrom
814-upgrade-angular-client-21-to-22-vitest
Draft

bracyw wants to merge 1 commit into
developfrom
814-upgrade-angular-client-21-to-22-vitest

Conversation

@bracyw

@bracyw bracyw commented Oct 16, 2026

Copy link
Copy Markdown
Collaborator

Changes

Moves angular-client to Angular 22 and TypeScript 6 on the @angular/build builders, replaces Karma with Vitest, and removes zone.js, NgZone and the animations package (the one live animation is now a CSS transition). Components keep the old change detection as Eager; moving them to OnPush is #863.

Testing

  • All 129 specs run on Vitest; the battery nub's click fade has a new spec
  • Swept every route at desktop and mobile width against develop on the Calypso simulator: same live values, no new console errors
  • PrimeNG 22 dropped pTemplate, so the rules table's empty message, the BMS chip-faults table and the graph sidebar's tree rows were converted to template refs and checked by hand

Screenshots

screenshot pending

Notes

On hold, not ready to merge. PrimeNG 22 moved from MIT to the commercial PrimeUI License, and without a key it shows an "Invalid PrimeUI License" badge on every page. NER doesn't qualify for the free tier. PrimeNG 21 builds on Angular 22 with npm overrides but isn't supported there. Replacing PrimeNG is #864 and replacing ApexCharts is #865.

Checklist

  • Commits are tagged with the ticket number
  • Lint, format and tests pass
  • No merge conflicts
  • All checks passing
  • Screenshots of UI changes (see Screenshots)
  • No package-lock.json changes unless dependencies changed
  • Request reviewers & ping on Slack

Closes #814

@bracyw bracyw added frontend Development Focused in the Frontend by: ai-assisted Written by a person with AI help labels Oct 16, 2026
@bracyw bracyw self-assigned this Oct 16, 2026
@bracyw

bracyw commented Oct 16, 2026

Copy link
Copy Markdown
Collaborator Author

Parked: PrimeNG 22 requires a commercial PrimeUI license key (the app shows a license badge on every page without one), so this waits on the decision in #864 (move the client off PrimeNG). The charts follow-up is #865 (move the charts off ApexCharts before v7 adds a license key).

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

by: ai-assisted Written by a person with AI help frontend Development Focused in the Frontend

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Upgrade the Angular client from 21 to 22 and move tests to Vitest

1 participant