Skip to content

Angular: Add deprecated nested components migration tool#993

Merged
ajivanyandev merged 8 commits into
DevExpress:masterfrom
ajivanyandev:angular/nested-components-migration-tool
Oct 24, 2025
Merged

Angular: Add deprecated nested components migration tool#993
ajivanyandev merged 8 commits into
DevExpress:masterfrom
ajivanyandev:angular/nested-components-migration-tool

Conversation

@ajivanyandev

@ajivanyandev ajivanyandev commented Sep 17, 2025

Copy link
Copy Markdown
Contributor

Add CLI command to help with migration process to our latest configuration components in angular

@ajivanyandev ajivanyandev self-assigned this Sep 17, 2025
@ajivanyandev ajivanyandev added the enhancement New feature or request label Sep 17, 2025
@VasilyStrelyaev

Copy link
Copy Markdown
Contributor

LGTM, but we need to show it to others

@ajivanyandev ajivanyandev requested a review from Copilot October 22, 2025 04:50

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces a new migration tool for DevExtreme Angular applications that automatically converts deprecated nested configuration components to the new component-specific naming structure. The migration is implemented as an Angular schematic and exposed through the DevExtreme CLI.

Key changes:

  • Added a new migrate-config-components schematic with HTML and inline template processing capabilities
  • Integrated the migration command into the DevExtreme CLI as devextreme migrate angular-config-components
  • Includes comprehensive mapping of 60+ DevExtreme components and their configuration elements

Reviewed Changes

Copilot reviewed 13 out of 14 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
packages/devextreme-schematics/tsconfig.json Enabled TypeScript compiler options for JSON module imports
packages/devextreme-schematics/src/migrate-config-components/template-migrator.ts Core migration logic for transforming HTML templates and inline component templates
packages/devextreme-schematics/src/migrate-config-components/schema.json JSON schema defining migration command options
packages/devextreme-schematics/src/migrate-config-components/mappings/deprecated-config-map.json Complete mapping of deprecated to new component selectors for all DevExtreme components
packages/devextreme-schematics/src/migrate-config-components/index.ts Schematic entry point orchestrating the migration process
packages/devextreme-schematics/src/migrate-config-components/README.md Documentation for the migration tool
packages/devextreme-schematics/src/collection.json Registered the new schematic in the collection
packages/devextreme-schematics/package.json Added parse5 and picomatch dependencies for HTML parsing
packages/devextreme-schematics/README.md Added TypeScript dependency troubleshooting documentation
packages/devextreme-cli/src/commands.json CLI command definition for the migration tool
packages/devextreme-cli/src/applications/application.angular.js Implementation of migration command with automatic package installation
packages/devextreme-cli/src/application.js Migration command routing logic
packages/devextreme-cli/index.js CLI entry point integration for migration commands
Files not reviewed (1)
  • packages/devextreme-schematics/package-lock.json: Language not supported

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread packages/devextreme-schematics/src/collection.json Outdated
Comment thread packages/devextreme-schematics/src/collection.json Outdated
ajivanyandev and others added 3 commits October 22, 2025 10:48
…emplate-migrator.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@DevExpress DevExpress deleted a comment from Copilot AI Oct 22, 2025
@DevExpress DevExpress deleted a comment from Copilot AI Oct 22, 2025
@DevExpress DevExpress deleted a comment from Copilot AI Oct 22, 2025
GoodDayForSurf
GoodDayForSurf previously approved these changes Oct 23, 2025
Comment thread packages/devextreme-cli/src/commands.json Outdated
Comment thread packages/devextreme-cli/src/commands.json Outdated
Comment thread packages/devextreme-cli/src/commands.json Outdated
Comment thread packages/devextreme-cli/src/commands.json Outdated
Comment thread packages/devextreme-schematics/src/collection.json Outdated
Comment thread packages/devextreme-schematics/src/migrate-config-components/schema.json Outdated
Comment thread packages/devextreme-schematics/src/migrate-config-components/schema.json Outdated
Comment thread packages/devextreme-cli/src/applications/application.angular.js Outdated
GoodDayForSurf
GoodDayForSurf previously approved these changes Oct 24, 2025
@ajivanyandev ajivanyandev force-pushed the angular/nested-components-migration-tool branch from 23ef0f0 to 7ea9453 Compare October 24, 2025 13:38
@ajivanyandev ajivanyandev merged commit 3d3f0a2 into DevExpress:master Oct 24, 2025
23 checks passed
alexslavr pushed a commit to alexslavr/devextreme-cli that referenced this pull request Oct 27, 2025
…xpress#993)

* Add angular nested components migration command

* fix proper escaping issue

* cli fixes according to the plan

* Update packages/devextreme

* Update packages/devextreme-schematics/src/collection.json

* type import fix

* Text updates after TW Review

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants