Skip to content

feat: migrate to Angular 22 - #45

Merged
sroucheray merged 1 commit into
masterfrom
feat/angular-22
Aug 7, 2026
Merged

feat: migrate to Angular 22#45
sroucheray merged 1 commit into
masterfrom
feat/angular-22

Conversation

@sroucheray

Copy link
Copy Markdown
Member

No description provided.

Copilot AI lite review requested due to automatic review settings August 7, 2026 16:02
Comment thread apps/demo/eslint.config.mjs Fixed
Comment thread apps/demo/eslint.config.mjs Fixed
Comment thread libs/ngx-contextmenu/eslint.config.mjs Fixed
Comment thread libs/ngx-contextmenu/eslint.config.mjs Fixed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Migrates the Nx workspace and the @perfectmemory/ngx-contextmenu library/demo app to Angular 22 (and associated Nx/TypeScript/ESLint tooling updates) to keep the project on current framework and build tooling.

Changes:

  • Upgrade Angular packages to v22 and Nx toolchain to v23, including TypeScript 6 and Jest/Storybook updates.
  • Adopt ESLint v9 flat config (eslint.config.mjs) at root and per-project level; remove legacy .eslintrc.json / .eslintignore.
  • Apply Nx/Angular migration outputs: tsconfig updates, Angular builder switch to @angular/build:*, and repo hygiene updates (.gitignore, .prettierignore, migrations.json).

Reviewed changes

Copilot reviewed 34 out of 36 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
tsconfig.base.json Updates root TS compiler options for TS6 migration.
package.json Upgrades Angular/Nx/dev tooling versions.
nx.json Updates Nx defaults/plugins for new executors & lint inputs.
migrations.json Refreshes recorded migration set for new Nx/Angular versions.
libs/ngx-contextmenu/tsconfig.spec.json Suppresses select Angular extended diagnostics for tests.
libs/ngx-contextmenu/tsconfig.lib.prod.json Suppresses select Angular extended diagnostics for prod build.
libs/ngx-contextmenu/tsconfig.lib.json Formatting + extended diagnostics suppression.
libs/ngx-contextmenu/tsconfig.json Adds TS6 ignoreDeprecations for project config loading.
libs/ngx-contextmenu/src/stories/Setup.mdx Documents Angular 22 compatibility row.
libs/ngx-contextmenu/src/stories/ngx-contextmenu/ngx-contextmenu.component.ts Sets ChangeDetectionStrategy.Eager in story component.
libs/ngx-contextmenu/src/lib/directives/context-menu/context-menu.directive.spec.ts Sets ChangeDetectionStrategy.Eager in test host.
libs/ngx-contextmenu/src/lib/directives/context-menu/context-menu.directive.integ.spec.ts Migrates Spectator import to @openng/spectator.
libs/ngx-contextmenu/src/lib/directives/context-menu-item/context-menu-item.directive.spec.ts Sets ChangeDetectionStrategy.Eager in test host.
libs/ngx-contextmenu/src/lib/directives/context-menu-content-item/context-menu-content-item.directive.spec.ts Sets ChangeDetectionStrategy.Eager in test host.
libs/ngx-contextmenu/src/lib/components/context-menu/context-menu.component.ts Sets ChangeDetectionStrategy.Eager on component.
libs/ngx-contextmenu/src/lib/components/context-menu-content/context-menu-content.component.html Applies Angular safe-navigation migration helper call.
libs/ngx-contextmenu/project.json Updates build defaults and revises test target config.
libs/ngx-contextmenu/package.json Updates Angular v22 peer dependency ranges.
libs/ngx-contextmenu/eslint.config.mjs Adds per-project flat ESLint config (Angular + JSON rules).
libs/ngx-contextmenu/.storybook/tsconfig.json Adds TS6 ignoreDeprecations for Storybook tsconfig.
libs/ngx-contextmenu/.eslintrc.json Removes legacy ESLint config (flat config migration).
eslint.config.mjs Adds root ESLint v9 flat config.
apps/demo/tsconfig.spec.json Suppresses select Angular extended diagnostics for tests.
apps/demo/tsconfig.json Adds TS6 ignoreDeprecations for project config loading.
apps/demo/tsconfig.app.json Adds extended diagnostics suppression for app compile.
apps/demo/src/main.ts Switches bootstrap from platformBrowserDynamic to platformBrowser.
apps/demo/src/app/app.component.ts Sets ChangeDetectionStrategy.Eager on component.
apps/demo/src/app-demo/app-demo.component.ts Sets ChangeDetectionStrategy.Eager on component.
apps/demo/project.json Switches to @angular/build:* executors and revises test target config.
apps/demo/eslint.config.mjs Adds per-project flat ESLint config (Angular rules).
apps/demo/.eslintrc.json Removes legacy ESLint config (flat config migration).
.prettierignore Ignores new Nx self-healing directory.
.gitignore Ignores new Nx/Claude-related generated directories.
.eslintrc.json Removes legacy root ESLint config (flat config migration).
.eslintignore Removes legacy eslintignore (flat config migration).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread apps/demo/eslint.config.mjs Outdated
Comment on lines +1 to +4
import { dirname } from 'path';
import { fileURLToPath } from 'url';
import baseConfig from '../../eslint.config.mjs';
import nx from '@nx/eslint-plugin';
Comment thread libs/ngx-contextmenu/eslint.config.mjs Outdated
Comment on lines +1 to +6
import { dirname } from 'path';
import { fileURLToPath } from 'url';
import baseConfig from '../../eslint.config.mjs';
import nx from '@nx/eslint-plugin';
import jsoncEslintParser from 'jsonc-eslint-parser';

Comment on lines +32 to 37
"configurations": {
"ci": {
"ci": true,
"coverage": true
}
}
Comment thread apps/demo/project.json
Comment on lines +72 to 77
"configurations": {
"ci": {
"ci": true,
"coverage": true
}
}
Comment on lines 26 to 30
"peerDependencies": {
"@angular/cdk": "^21.0.5",
"@angular/common": "^21.0.6",
"@angular/core": "^21.0.6"
"@angular/cdk": "^22.0.7",
"@angular/common": "^22.0.8",
"@angular/core": "^22.0.8"
},
@sroucheray
sroucheray merged commit 8bbec0c into master Aug 7, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants