devextreme-schematics 1.12.0 → 1.12.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/README.md +15 -14
  2. package/package.json +2 -2
  3. package/src/add-app-template/schema.json +1 -1
  4. package/src/add-layout/files/src/app/app-navigation.ts +3 -1
  5. package/src/add-layout/index.js +33 -5
  6. package/src/add-layout/index.js.map +1 -1
  7. package/src/add-layout/index.ts +42 -6
  8. package/src/add-layout/index_spec.js +1 -1
  9. package/src/add-layout/index_spec.ts +1 -1
  10. package/src/add-sample-views/index_spec.js +2 -1
  11. package/src/add-sample-views/index_spec.js.map +1 -1
  12. package/src/add-sample-views/index_spec.ts +3 -1
  13. package/src/add-view/index_spec.js +2 -1
  14. package/src/add-view/index_spec.js.map +1 -1
  15. package/src/add-view/index_spec.ts +3 -1
  16. package/src/install/schema.json +1 -1
  17. package/src/migrate-config-components/README.md +14 -27
  18. package/src/migrate-config-components/index.d.ts +3 -3
  19. package/src/migrate-config-components/index.js +25 -34
  20. package/src/migrate-config-components/index.js.map +1 -1
  21. package/src/migrate-config-components/index.ts +33 -36
  22. package/src/migrate-config-components/schema.json +4 -3
  23. package/src/migrate-config-components/template-migrator.js +19 -35
  24. package/src/migrate-config-components/template-migrator.js.map +1 -1
  25. package/src/migrate-config-components/template-migrator.ts +19 -32
  26. package/src/utility/change.js +4 -2
  27. package/src/utility/change.js.map +1 -1
  28. package/src/utility/change.ts +7 -2
  29. package/src/utility/latest-versions.js +2 -2
  30. package/src/utility/latest-versions.ts +2 -2
  31. package/src/utility/typescript-resolver.d.ts +12 -0
  32. package/src/utility/typescript-resolver.js +153 -0
  33. package/src/utility/typescript-resolver.js.map +1 -0
  34. package/src/utility/typescript-resolver.ts +144 -0
package/README.md CHANGED
@@ -1,24 +1,24 @@
1
1
  # DevExtreme Schematics
2
- DevExtreme schematics are workflow tools you can use in an Angular application created with [DevExtreme CLI](https://github.com/devexpress/DevExtreme-CLI) to add DevExtreme libraries or views and perform other DevExtreme-related tasks. Read [this article](https://blog.angular.io/schematics-an-introduction-dc1dfbc2a2b2) for more information on Angular Schematics.
2
+ DevExtreme Schematics are Angular workflow tools for applications created with [DevExtreme CLI](https://github.com/devexpress/DevExtreme-CLI). You can use these tools to add application views and layouts to your apps or to perform other tasks related to DevExtreme and the DevExtreme [Angular Application Template](https://devexpress.github.io/devextreme-angular-template). For more information on Angular Schematics, refer to the following topic: [Introduction to Angular Schematics](https://blog.angular.io/schematics-an-introduction-dc1dfbc2a2b2).
3
3
 
4
4
  ## Included Schematics
5
5
 
6
6
  This package includes the following schematics:
7
7
 
8
8
  - [install](src/install)
9
- Adds DevExtreme to an Angular application
9
+ Adds DevExtreme to an Angular application.
10
10
 
11
11
  - [add-layout](src/add-layout)
12
- Adds a DevExtreme layout to a DevExtreme Angular application
12
+ Adds a DevExtreme layout to an Angular application.
13
13
 
14
14
  - [add-app-template](src/add-app-template)
15
- Adds a DevExtreme layout template to an Angular application
15
+ Adds a DevExtreme app template to an Angular application.
16
16
 
17
17
  - [add-sample-views](src/add-sample-views)
18
- Adds sample views to a DevExtreme Angular application
18
+ Adds sample views to an Angular application.
19
19
 
20
20
  - [add-view](src/add-view)
21
- Adds a view to a DevExtreme Angular application
21
+ Adds a view to an Angular application.
22
22
 
23
23
  ## TypeScript Dependency & Global CLI Usage
24
24
 
@@ -28,21 +28,22 @@ Some DevExtreme migration schematics require TypeScript to process inline Angula
28
28
  - Your project's node_modules
29
29
  - The global node_modules
30
30
 
31
- If TypeScript is not found, inline template migration will be skipped and a warning will be shown with resolution attempts and errors.
31
+ If the CLI fails to find TypeScript, it skips inline template migration and displays a warning message that contains resolution attempts and errors.
32
32
 
33
- ### How to Fix TypeScript Not Available
33
+ ### How to Install TypeScript
34
34
 
35
- 1. **Local Project:** Install TypeScript in your project root:
35
+ 1. **Local Project:** To install TypeScript in a project, run the following command:
36
36
  ```sh
37
37
  npm install typescript --save-dev
38
38
  ```
39
- 2. **Global CLI:** If you use the CLI globally, also install TypeScript globally:
39
+ 2. **Global CLI:** To install TypeScript globally on your machine, run the following command:
40
40
  ```sh
41
41
  npm install -g typescript
42
42
  ```
43
- 3. **npx Usage:** If you use npx, ensure TypeScript is available in your workspace or globally.
44
- 4. **Troubleshooting:**
45
- - Some npm global installs may not link dependencies as expected. If you see repeated TypeScript resolution errors, try running the CLI from a project where TypeScript is installed locally.
43
+
44
+ **Troubleshooting**
45
+
46
+ - Some npm global installs may not link dependencies as expected. If you experience repeated TypeScript resolution errors, try running CLI commands from a project where TypeScript is installed locally.
46
47
  - You can also manually link TypeScript to your global node_modules if needed.
47
48
 
48
- If you continue to see errors, review the warning output for resolution attempts and check your npm/node installation paths.
49
+ If errors persist, review resolution attempt information in the warning output and check your npm/node installation paths.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "devextreme-schematics",
3
- "version": "1.12.0",
3
+ "version": "1.12.2",
4
4
  "description": "DevExtreme schematics",
5
5
  "scripts": {
6
6
  "build": "tsc -p tsconfig.json",
@@ -38,5 +38,5 @@
38
38
  "tslint": "^5.20.1",
39
39
  "typescript": "~5.2.1"
40
40
  },
41
- "gitHead": "0a56ed4e9c13e1deb23007f0d23f974806878a7f"
41
+ "gitHead": "d8919cf6f14386254ace295b651ce3f532833ba8"
42
42
  }
@@ -39,7 +39,7 @@
39
39
  "dxversion": {
40
40
  "type": "string",
41
41
  "description": "The DevExtreme version",
42
- "default": "25.1.6"
42
+ "default": "25.1.7"
43
43
  },
44
44
  "globalNgCliVersion": {
45
45
  "type":"string",
@@ -1 +1,3 @@
1
- export const navigation = [];
1
+ type NavigationItem = { path?: string, text: string, icon?: string, items?: NavigationItem[] };
2
+ export const navigation: NavigationItem[] = [];
3
+
@@ -116,6 +116,24 @@ function updateBudgets(host, options) {
116
116
  return host;
117
117
  });
118
118
  }
119
+ function addPolyfills(host, project, polyfills) {
120
+ return __awaiter(this, void 0, void 0, function* () {
121
+ const projectName = yield (0, project_1.getProjectName)(host, project);
122
+ (0, modify_json_file_1.modifyJSONFile)(host, './angular.json', config => {
123
+ const buildOptions = config.projects[projectName]['architect']['build']['options'];
124
+ if (!buildOptions.polyfills) {
125
+ buildOptions.polyfills = [];
126
+ }
127
+ polyfills.forEach((polyfill) => {
128
+ if (!buildOptions.polyfills.includes(polyfill)) {
129
+ buildOptions.polyfills.push(polyfill);
130
+ }
131
+ });
132
+ return config;
133
+ });
134
+ return host;
135
+ });
136
+ }
119
137
  function addViewportToBody(sourcePath = '') {
120
138
  return (host) => {
121
139
  const indexPath = (0, path_1.join)(sourcePath, 'index.html');
@@ -135,8 +153,8 @@ function modifyFileRule(path, callback) {
135
153
  return (0, change_1.applyChanges)(host, changes, path);
136
154
  };
137
155
  }
138
- function updateAppComponent(host, sourcePath, templateOptions = {}) {
139
- const appMComponentPath = sourcePath + ((0, angular_version_1.isAngularVersionHigherThan)(host, 20) ? 'app.ts' : 'app.component.ts');
156
+ function updateAppComponent(sourcePath, templateOptions = {}) {
157
+ const appMComponentPath = sourcePath + templateOptions.name + '.ts';
140
158
  const importSetter = (importName, path, alias) => {
141
159
  return (source) => {
142
160
  return [(0, ast_utils_1.insertImport)(source, appMComponentPath, importName, path, false, alias)];
@@ -171,11 +189,20 @@ function hasRouting(host, sourcePath) {
171
189
  function addPackagesToDependency(globalNgCliVersion) {
172
190
  const version = new semver_1.SemVer(globalNgCliVersion.replace(/\^|\~/g, ''));
173
191
  return (host) => {
192
+ const zonejs = (0, dependencies_1.getPackageJsonDependency)(host, 'zone.js');
174
193
  (0, dependencies_1.addPackageJsonDependency)(host, {
175
194
  type: dependencies_1.NodeDependencyType.Default,
176
195
  name: '@angular/cdk',
177
- version: `~${version.major}.${version.minor}.0`
196
+ version: version.raw.includes('next') || version.raw.includes('-rc')
197
+ ? 'next' : `^${version.major}.0.0`
178
198
  });
199
+ if (!zonejs) {
200
+ (0, dependencies_1.addPackageJsonDependency)(host, {
201
+ type: dependencies_1.NodeDependencyType.Default,
202
+ name: 'zone.js',
203
+ version: version.major > 18 ? '~0.15.0' : '~0.14.0'
204
+ });
205
+ }
179
206
  return host;
180
207
  };
181
208
  }
@@ -280,11 +307,12 @@ function default_1(options) {
280
307
  const rules = [
281
308
  modifyContentByTemplate(sourcePath, projectFilesSource, null, templateOptions, modifyContent),
282
309
  updateDevextremeConfig(sourcePath),
283
- updateAppComponent(host, appPath, templateOptions),
310
+ updateAppComponent(appPath, templateOptions),
284
311
  addBuildThemeScript(),
285
312
  () => addCustomThemeStyles(host, options, sourcePath),
286
313
  addViewportToBody(sourcePath),
287
- addPackagesToDependency(options.globalNgCliVersion)
314
+ addPackagesToDependency(options.globalNgCliVersion),
315
+ () => addPolyfills(host, options.project, ['zone.js'])
288
316
  ];
289
317
  if (options.updateBudgets) {
290
318
  rules.push(() => updateBudgets(host, options));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
@@ -44,7 +44,8 @@ import {
44
44
 
45
45
  import {
46
46
  NodeDependencyType,
47
- addPackageJsonDependency
47
+ addPackageJsonDependency,
48
+ getPackageJsonDependency,
48
49
  } from '@schematics/angular/utility/dependencies';
49
50
 
50
51
  import { getSourceFile } from '../utility/source';
@@ -173,6 +174,28 @@ async function updateBudgets(host: Tree, options: any) {
173
174
  return host;
174
175
  }
175
176
 
177
+ async function addPolyfills(host: Tree, project: string, polyfills: string[]) {
178
+ const projectName = await getProjectName(host, project);
179
+
180
+ modifyJSONFile(host, './angular.json', config => {
181
+ const buildOptions: Record<string, any> = config.projects[projectName]['architect']['build']['options'];
182
+
183
+ if (!buildOptions.polyfills) {
184
+ buildOptions.polyfills = [];
185
+ }
186
+
187
+ polyfills.forEach((polyfill) => {
188
+ if (!buildOptions.polyfills.includes(polyfill)) {
189
+ buildOptions.polyfills.push(polyfill);
190
+ }
191
+ });
192
+
193
+ return config;
194
+ });
195
+
196
+ return host;
197
+ }
198
+
176
199
  function addViewportToBody(sourcePath: string = '') {
177
200
  return (host: Tree) => {
178
201
  const indexPath = join(sourcePath, 'index.html');
@@ -199,8 +222,8 @@ function modifyFileRule(path: string, callback: (source: SourceFile) => Change[]
199
222
  };
200
223
  }
201
224
 
202
- function updateAppComponent(host: Tree, sourcePath: string, templateOptions: any = {}) {
203
- const appMComponentPath = sourcePath + (isAngularVersionHigherThan(host, 20) ? 'app.ts' : 'app.component.ts');
225
+ function updateAppComponent(sourcePath: string, templateOptions: any = {}) {
226
+ const appMComponentPath = sourcePath + templateOptions.name + '.ts';
204
227
 
205
228
  const importSetter = (importName: string, path: string, alias: string) => {
206
229
  return (source: SourceFile) => {
@@ -250,13 +273,25 @@ function hasRouting(host: Tree, sourcePath: string) {
250
273
 
251
274
  function addPackagesToDependency(globalNgCliVersion: string) {
252
275
  const version = new SemVer(globalNgCliVersion.replace(/\^|\~/g, ''));
276
+
253
277
  return (host: Tree) => {
278
+ const zonejs = getPackageJsonDependency(host, 'zone.js');
279
+
254
280
  addPackageJsonDependency(host, {
255
281
  type: NodeDependencyType.Default,
256
282
  name: '@angular/cdk',
257
- version: `~${version.major}.${version.minor}.0`
283
+ version: version.raw.includes('next') || version.raw.includes('-rc')
284
+ ? 'next' : `^${version.major}.0.0`
258
285
  });
259
286
 
287
+ if (!zonejs) {
288
+ addPackageJsonDependency(host, {
289
+ type: NodeDependencyType.Default,
290
+ name: 'zone.js',
291
+ version: version.major > 18 ? '~0.15.0' : '~0.14.0'
292
+ });
293
+ }
294
+
260
295
  return host;
261
296
  };
262
297
  }
@@ -389,11 +424,12 @@ export default function(options: any): Rule {
389
424
  const rules = [
390
425
  modifyContentByTemplate(sourcePath, projectFilesSource, null, templateOptions, modifyContent),
391
426
  updateDevextremeConfig(sourcePath),
392
- updateAppComponent(host, appPath, templateOptions),
427
+ updateAppComponent(appPath, templateOptions),
393
428
  addBuildThemeScript(),
394
429
  () => addCustomThemeStyles(host, options, sourcePath) as any,
395
430
  addViewportToBody(sourcePath),
396
- addPackagesToDependency(options.globalNgCliVersion)
431
+ addPackagesToDependency(options.globalNgCliVersion),
432
+ () => addPolyfills(host, options.project, ['zone.js'])
397
433
  ];
398
434
 
399
435
  if (options.updateBudgets) {
@@ -169,7 +169,7 @@ describe('layout', () => {
169
169
  const runner = new testing_1.SchematicTestRunner('schematics', collectionPath);
170
170
  const tree = yield runner.runSchematic('add-layout', options, appTree);
171
171
  const packageConfig = JSON.parse(tree.readContent('package.json'));
172
- expect(packageConfig.dependencies['@angular/cdk']).toBe('~17.2.0');
172
+ expect(packageConfig.dependencies['@angular/cdk']).toBe('^17.0.0');
173
173
  }));
174
174
  it('should update budgets if updateBudgets option is true', () => __awaiter(void 0, void 0, void 0, function* () {
175
175
  const runner = new testing_1.SchematicTestRunner('schematics', collectionPath);
@@ -174,7 +174,7 @@ describe('layout', () => {
174
174
  const tree = await runner.runSchematic('add-layout', options, appTree);
175
175
  const packageConfig = JSON.parse(tree.readContent('package.json'));
176
176
 
177
- expect(packageConfig.dependencies['@angular/cdk']).toBe('~17.2.0');
177
+ expect(packageConfig.dependencies['@angular/cdk']).toBe('^17.0.0');
178
178
  });
179
179
 
180
180
  it('should update budgets if updateBudgets option is true', async () => {
@@ -71,7 +71,8 @@ describe('sample views', () => {
71
71
  expect(moduleContent).toMatch(/import { HomeComponent } from /);
72
72
  const navigationContent = tree.readContent('/src/app/app-navigation.ts');
73
73
  expect(navigationContent).toMatch(/text: 'Home'/);
74
- expect(navigationContent).toContain(`export const navigation = [
74
+ expect(navigationContent).toContain(`type NavigationItem = { path?: string, text: string, icon?: string, items?: NavigationItem[] };
75
+ export const navigation: NavigationItem[] = [
75
76
  {
76
77
  text: 'Home',
77
78
  path: '/home',
@@ -1 +1 @@
1
- {"version":3,"file":"index_spec.js","sourceRoot":"","sources":["index_spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gEAAuF;AAEvF,2CAA6B;AAE7B,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;AAElE,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,MAAM,UAAU,GAAQ;QACtB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,EAAE;QACf,WAAW,EAAE,KAAK;QAClB,cAAc,EAAE,KAAK;QACrB,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE,KAAK;QAChB,eAAe,EAAE,KAAK;QACtB,UAAU,EAAE,KAAK;KAClB,CAAC;IAEF,MAAM,gBAAgB,GAAqB;QACzC,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,OAAO;KACjB,CAAC;IAEF,MAAM,kBAAkB,GAAQ;QAC9B,OAAO,EAAE,SAAS;KACnB,CAAC;IAEF,MAAM,2BAA2B,GAAG,OAAO,CAAC,OAAO,CAAC,wDAAwD,CAAC,CAAC;IAC9G,MAAM,eAAe,GAAG,IAAI,6BAAmB,CAAC,qBAAqB,EAAE,2BAA2B,CAAC,CAAC;IACpG,IAAI,OAAqB,CAAC;IAE1B,UAAU,CAAC,GAAS,EAAE;QACpB,OAAO,GAAI,MAAM,eAAe,CAAC,YAAY,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;QAC7E,OAAO,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,aAAa,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACnF,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAS,EAAE;QACvC,MAAM,MAAM,GAAG,IAAI,6BAAmB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QACrE,IAAI,IAAI,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,wBAAwB,EAAE,EAAE,OAAO,CAAC,CAAC;QAClG,IAAI,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;QAE/E,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAC;QAEjE,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAC1D,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAE9C,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;QAEhE,MAAM,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;QACzE,MAAM,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAClD,MAAM,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC;;;;;;;;;;;;;;;;;;;;GAoBrC,CAAC,CAAC;IACH,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index_spec.js","sourceRoot":"","sources":["index_spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gEAAuF;AAEvF,2CAA6B;AAE7B,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;AAElE,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,MAAM,UAAU,GAAQ;QACtB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,EAAE;QACf,WAAW,EAAE,KAAK;QAClB,cAAc,EAAE,KAAK;QACrB,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE,KAAK;QAChB,eAAe,EAAE,KAAK;QACtB,UAAU,EAAE,KAAK;KAClB,CAAC;IAEF,MAAM,gBAAgB,GAAqB;QACzC,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,OAAO;KACjB,CAAC;IAEF,MAAM,kBAAkB,GAAQ;QAC9B,OAAO,EAAE,SAAS;KACnB,CAAC;IAEF,MAAM,2BAA2B,GAAG,OAAO,CAAC,OAAO,CAAC,wDAAwD,CAAC,CAAC;IAC9G,MAAM,eAAe,GAAG,IAAI,6BAAmB,CAAC,qBAAqB,EAAE,2BAA2B,CAAC,CAAC;IACpG,IAAI,OAAqB,CAAC;IAE1B,UAAU,CAAC,GAAS,EAAE;QACpB,OAAO,GAAI,MAAM,eAAe,CAAC,YAAY,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;QAC7E,OAAO,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,aAAa,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACnF,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAS,EAAE;QACvC,MAAM,MAAM,GAAG,IAAI,6BAAmB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QACrE,IAAI,IAAI,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,wBAAwB,EAAE,EAAE,OAAO,CAAC,CAAC;QAClG,IAAI,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;QAE/E,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAC;QAEjE,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAC1D,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAE9C,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;QAEhE,MAAM,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;QACzE,MAAM,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAClD,MAAM,CAAC,iBAAiB,CAAC,CAAC,SAAS,CACjC;;;;;;;;;;;;;;;;;;;;;GAqBH,CAAC,CAAC;IACH,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -49,7 +49,9 @@ describe('sample views', () => {
49
49
 
50
50
  const navigationContent = tree.readContent('/src/app/app-navigation.ts');
51
51
  expect(navigationContent).toMatch(/text: 'Home'/);
52
- expect(navigationContent).toContain(`export const navigation = [
52
+ expect(navigationContent).toContain(
53
+ `type NavigationItem = { path?: string, text: string, icon?: string, items?: NavigationItem[] };
54
+ export const navigation: NavigationItem[] = [
53
55
  {
54
56
  text: 'Home',
55
57
  path: '/home',
@@ -127,7 +127,8 @@ describe('view', () => {
127
127
  expect(moduleContent).toMatch(/icon: 'home'/);
128
128
  expect(moduleContent).toMatch(/text: 'Test'/);
129
129
  expect(moduleContent).toMatch(/icon: 'folder'/);
130
- expect(moduleContent).toContain(`navigation = [
130
+ expect(moduleContent).toContain(`type NavigationItem = { path?: string, text: string, icon?: string, items?: NavigationItem[] };
131
+ export const navigation: NavigationItem[] = [
131
132
  {
132
133
  text: 'Test',
133
134
  path: '/pages/test',
@@ -1 +1 @@
1
- {"version":3,"file":"index_spec.js","sourceRoot":"","sources":["index_spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index_spec.js","sourceRoot":"","sources":["index_spec.ts"],"names":[],"mappings":"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"}
@@ -117,7 +117,9 @@ describe('view', () => {
117
117
  expect(moduleContent).toMatch(/text: 'Test'/);
118
118
  expect(moduleContent).toMatch(/icon: 'folder'/);
119
119
 
120
- expect(moduleContent).toContain(`navigation = [
120
+ expect(moduleContent).toContain(
121
+ `type NavigationItem = { path?: string, text: string, icon?: string, items?: NavigationItem[] };
122
+ export const navigation: NavigationItem[] = [
121
123
  {
122
124
  text: 'Test',
123
125
  path: '/pages/test',
@@ -7,7 +7,7 @@
7
7
  "dxversion": {
8
8
  "type": "string",
9
9
  "description": "The DevExtreme version",
10
- "default": "25.1.6"
10
+ "default": "25.1.7"
11
11
  },
12
12
  "project": {
13
13
  "type": "string",
@@ -1,31 +1,31 @@
1
1
  # migrate-config-components
2
2
 
3
- A schematic that migrates deprecated nested DevExtreme components to the new config-based structure.
3
+ A schematic that migrates generic DevExtreme configuration components.
4
4
 
5
5
  ## Description
6
6
 
7
- This schematic automatically migrates your Angular application to use the latest DevExtreme component structure by replacing deprecated nested components (such as `<dxi-column>`) with their new config-based equivalents (such as `<dxi-data-grid-column>`). The migration command is available as a top-level DevExtreme CLI command and can be run from any directory.
7
+ This schematic automatically migrates generic configuration components to named configuration components in your DevExtreme-powered Angular app. The migration command is available as a top-level DevExtreme CLI command that you can run from any directory.
8
8
 
9
9
  ## Usage
10
10
 
11
11
  ### Via DevExtreme CLI (Recommended)
12
12
 
13
- The migration command can be run from any directory and will work both inside and outside Angular workspaces:
13
+ You can run the migration command from any directory, both inside and outside Angular workspaces:
14
14
 
15
15
  ```bash
16
16
  devextreme migrate angular-config-components
17
17
  ```
18
18
 
19
- ### Options (All Optional)
19
+ ### Parameters (All Optional)
20
20
 
21
21
  - `--include`: Glob patterns of template files to include (default: `**/*.html`). Separate multiple patterns with commas.
22
- - `--script-include`: Glob patterns for TypeScript/JavaScript files to scan for inline `@Component({ template })` (default: `**/*.ts,**/*.js`). Set to empty to disable.
23
- - `--dry`: Run in dry mode to preview changes without applying them (default: `false`)
22
+ - `--script-include`: Glob patterns for TypeScript/JavaScript files to scan for inline templates (default: `**/*.ts,**/*.js`). Pass an empty value ('' or []) to disable.
23
+ - `--dry`: Run in dry mode to preview changes without applying them (default: `false`).
24
24
 
25
25
  ### Examples
26
26
 
27
27
  ```bash
28
- # Migrate all HTML templates and inline templates (using defaults)
28
+ # Migrate all HTML templates and inline templates (default configuration)
29
29
  devextreme migrate angular-config-components
30
30
 
31
31
  # Migrate only specific files
@@ -43,17 +43,15 @@ devextreme migrate angular-config-components --include="*.html,*.ts" --dry
43
43
 
44
44
  ### Via Angular CLI
45
45
 
46
- Alternatively, you can run the schematic directly with Angular CLI:
46
+ You can also use the Angular CLI to run the schematic:
47
47
 
48
48
  ```bash
49
49
  ng g devextreme-schematics:migrate-config-components
50
50
  ```
51
51
 
52
- ## What it does
52
+ ## Sample results
53
53
 
54
- This schematic automatically updates your templates to replace deprecated nested components with the new config-based component structure. For example:
55
-
56
- **Before (deprecated nested):**
54
+ **Generic configuration components:**
57
55
  ```html
58
56
  <dx-data-grid>
59
57
  <dxi-column field="name"></dxi-column>
@@ -61,7 +59,7 @@ This schematic automatically updates your templates to replace deprecated nested
61
59
  </dx-data-grid>
62
60
  ```
63
61
 
64
- **After (config-based):**
62
+ **Named configuration components:**
65
63
  ```html
66
64
  <dx-data-grid>
67
65
  <dxi-data-grid-column field="name"></dxi-data-grid-column>
@@ -69,19 +67,8 @@ This schematic automatically updates your templates to replace deprecated nested
69
67
  </dx-data-grid>
70
68
  ```
71
69
 
72
- ### Why migrate?
73
-
74
- DevExtreme Angular components are moving from a nested structure (e.g., `<dxi-column>`) to a config-based structure (e.g., `<dxi-data-grid-column>`) for improved clarity, maintainability, and future compatibility. This schematic automates the migration process to help you keep your codebase up to date with the latest DevExtreme standards.
75
-
76
70
  ## Requirements
77
71
 
78
- - Node.js and npm/yarn installed
79
- - Angular application with DevExtreme components (when running inside a workspace)
80
- - DevExtreme Angular version that supports the new component structure
81
-
82
- ## Notes
83
-
84
- - The command can be run from any directory, not just Angular workspaces
85
- - When run outside an Angular workspace, the underlying Angular CLI will show appropriate error messages
86
- - All options are optional and have sensible defaults
87
- - The command uses the latest version of `devextreme-schematics` automatically
72
+ - Node.js and npm or yarn.
73
+ - Angular application with DevExtreme components.
74
+ - DevExtreme Angular version that supports named configuration components.
@@ -1,7 +1,7 @@
1
1
  import { Rule } from '@angular-devkit/schematics';
2
2
  export interface Options {
3
- include?: string[];
4
- dry?: boolean;
5
- scriptInclude?: string[];
3
+ include?: string | string[];
4
+ dry?: boolean | string;
5
+ scriptInclude?: string | string[];
6
6
  }
7
7
  export declare function migrateConfigComponents(options?: Options): Rule;
@@ -16,40 +16,9 @@ exports.migrateConfigComponents = void 0;
16
16
  const template_migrator_1 = require("./template-migrator");
17
17
  const deprecated_config_map_json_1 = __importDefault(require("./mappings/deprecated-config-map.json"));
18
18
  function migrateConfigComponents(options = {}) {
19
- // Accept --include as array or comma-separated string
20
- let include = ['**/*.html'];
21
- const rawInclude = options.include;
22
- if (Array.isArray(rawInclude) && rawInclude.length) {
23
- include = rawInclude;
24
- }
25
- else if (typeof rawInclude === 'string' && rawInclude) {
26
- let str = rawInclude.trim();
27
- if (str.startsWith('[') && str.endsWith(']')) {
28
- str = str.slice(1, -1);
29
- }
30
- include = str.split(',').map((s) => s.trim()).filter((s) => !!s);
31
- }
32
- // Coerce string 'true'/'false' to boolean for dry option
33
- let dryFlag = false;
34
- if (typeof options.dry === 'string') {
35
- dryFlag = options.dry === 'true';
36
- }
37
- else {
38
- dryFlag = !!options.dry;
39
- }
40
- // Accept --script-include as array or comma-separated string
41
- let scriptGlobs = ['**/*.ts', '**/*.js'];
42
- const rawScriptInclude = options.scriptInclude;
43
- if (Array.isArray(rawScriptInclude) && rawScriptInclude.length) {
44
- scriptGlobs = rawScriptInclude;
45
- }
46
- else if (typeof rawScriptInclude === 'string' && rawScriptInclude) {
47
- let str = rawScriptInclude.trim();
48
- if (str.startsWith('[') && str.endsWith(']')) {
49
- str = str.slice(1, -1);
50
- }
51
- scriptGlobs = str.split(',').map((s) => s.trim()).filter((s) => !!s);
52
- }
19
+ const include = normalizeGlobOption(options.include, ['**/*.html']);
20
+ const dryFlag = normalizeBoolean(options.dry);
21
+ const scriptGlobs = normalizeGlobOption(options.scriptInclude, ['**/*.ts', '**/*.js']);
53
22
  return (tree, ctx) => __awaiter(this, void 0, void 0, function* () {
54
23
  ctx.logger.info(`[config-migrator] Starting…`);
55
24
  const hostMap = deprecated_config_map_json_1.default;
@@ -77,4 +46,26 @@ function componentToSelectorGuess(componentName) {
77
46
  const core = componentName.replace(/Component$/, '').replace(/^Dx/, 'dx-');
78
47
  return core.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();
79
48
  }
49
+ function normalizeGlobOption(value, fallback) {
50
+ if (Array.isArray(value)) {
51
+ return value.filter(Boolean);
52
+ }
53
+ if (typeof value === 'string' && value.trim()) {
54
+ const trimmed = value.trim();
55
+ const inner = trimmed.startsWith('[') && trimmed.endsWith(']')
56
+ ? trimmed.slice(1, -1)
57
+ : trimmed;
58
+ return inner
59
+ .split(',')
60
+ .map(segment => segment.trim())
61
+ .filter(Boolean);
62
+ }
63
+ return fallback.slice();
64
+ }
65
+ function normalizeBoolean(value) {
66
+ if (typeof value === 'string') {
67
+ return value.toLowerCase() === 'true';
68
+ }
69
+ return !!value;
70
+ }
80
71
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}