@rxap/schematics-ts-morph 19.2.0-dev.1 → 19.2.0-dev.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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,12 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [19.2.0-dev.2](https://gitlab.com/rxap/packages/compare/@rxap/schematics-ts-morph@19.2.0-dev.1...@rxap/schematics-ts-morph@19.2.0-dev.2) (2026-01-29)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **schematic:** update test utilities import paths and enhance Nest module handling ([4d787f2](https://gitlab.com/rxap/packages/commit/4d787f23297d2e5ff0834f90fb0792a33a693aa6))
11
+
6
12
  # [19.2.0-dev.1](https://gitlab.com/rxap/packages/compare/@rxap/schematics-ts-morph@19.2.0-dev.0...@rxap/schematics-ts-morph@19.2.0-dev.1) (2026-01-29)
7
13
 
8
14
  **Note:** Version bump only for package @rxap/schematics-ts-morph
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "19.2.0-dev.1",
2
+ "version": "19.2.0-dev.2",
3
3
  "name": "@rxap/schematics-ts-morph",
4
4
  "description": "This package provides utilities for manipulating TypeScript code using ts-morph, particularly for Angular and NestJS projects. It offers functions to add, coerce, and modify code elements like classes, methods, decorators, and imports. The package also includes specialized functions for working with Angular components, NestJS modules, and form definitions.\n",
5
5
  "license": "GPL-3.0-or-later",
@@ -7,7 +7,7 @@
7
7
  "@angular-devkit/core": "19.2.1",
8
8
  "@angular-devkit/schematics": "19.2.1",
9
9
  "@nx/devkit": "20.5.0",
10
- "@rxap/schematics-utilities": "^19.0.6-dev.0",
10
+ "@rxap/schematics-utilities": "^19.1.0-dev.0",
11
11
  "@rxap/ts-morph": "^1.6.1-dev.0",
12
12
  "@rxap/utilities": "^16.5.1-dev.0",
13
13
  "@rxap/workspace-ts-morph": "^19.1.14-dev.0",
@@ -46,7 +46,7 @@
46
46
  },
47
47
  "schematics": "./generators.json",
48
48
  "type": "commonjs",
49
- "gitHead": "c7d69b5331aace8f6e17874db92377b5ab82422b",
49
+ "gitHead": "d5679c2b9b06459349f6c196d7e0db1007e79387",
50
50
  "types": "./src/index.d.ts",
51
51
  "main": "./src/index.js"
52
52
  }
@@ -2,8 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CoerceNestModule = CoerceNestModule;
4
4
  const schematics_1 = require("@angular-devkit/schematics");
5
+ const ts_morph_1 = require("@rxap/ts-morph");
5
6
  const utilities_1 = require("@rxap/utilities");
6
7
  const workspace_utilities_1 = require("@rxap/workspace-utilities");
8
+ const path_1 = require("path");
7
9
  const coerce_class_1 = require("../coerce-class");
8
10
  const ts_morph_transform_1 = require("../ts-morph-transform");
9
11
  const coerce_imports_1 = require("../ts-morph/coerce-imports");
@@ -14,6 +16,9 @@ function CoerceNestModule(options) {
14
16
  let { tsMorphTransform } = options;
15
17
  // eslint-disable-next-line @typescript-eslint/no-empty-function
16
18
  tsMorphTransform !== null && tsMorphTransform !== void 0 ? tsMorphTransform : (tsMorphTransform = () => { });
19
+ const moduleName = (0, utilities_1.classify)(name) + 'Module';
20
+ const moduleFile = `${(0, utilities_1.dasherize)(name)}.module.ts`;
21
+ const moduleFilePath = directory ? (0, path_1.join)(directory, moduleFile) : moduleFile;
17
22
  return (0, schematics_1.chain)([
18
23
  (0, assert_nest_project_1.AssertNestProject)({
19
24
  project,
@@ -28,7 +33,7 @@ function CoerceNestModule(options) {
28
33
  directory,
29
34
  backend,
30
35
  }, (project, [sourceFile]) => {
31
- const classDeclaration = (0, coerce_class_1.CoerceClass)(sourceFile, (0, utilities_1.classify)(name) + 'Module', {
36
+ const classDeclaration = (0, coerce_class_1.CoerceClass)(sourceFile, moduleName, {
32
37
  isExported: true,
33
38
  decorators: [
34
39
  {
@@ -44,18 +49,42 @@ function CoerceNestModule(options) {
44
49
  },
45
50
  ]);
46
51
  tsMorphTransform(project, sourceFile, classDeclaration);
47
- }, [`${(0, utilities_1.dasherize)(name)}.module.ts?`]),
52
+ }, [`${moduleFile}?`]),
48
53
  tree => {
49
- const nestProject = (0, workspace_utilities_1.buildNestProjectName)(options);
50
- if ((0, workspace_utilities_1.IsApplicationProject)((0, workspace_utilities_1.GetProject)(tree, nestProject)) && name !== 'app') {
51
- return (0, add_nest_module_to_app_module_1.AddNestModuleToAppModule)({
52
- project,
53
- feature,
54
- shared,
55
- name,
56
- directory,
57
- backend,
58
- });
54
+ const nestProject = (0, workspace_utilities_1.GetProject)(tree, (0, workspace_utilities_1.buildNestProjectName)(options));
55
+ if (name !== 'app' && (0, workspace_utilities_1.IsNestJsProject)(nestProject)) {
56
+ if ((0, workspace_utilities_1.IsApplicationProject)(nestProject)) {
57
+ return (0, add_nest_module_to_app_module_1.AddNestModuleToAppModule)({
58
+ project,
59
+ feature,
60
+ shared,
61
+ name,
62
+ directory,
63
+ backend,
64
+ });
65
+ }
66
+ if ((0, workspace_utilities_1.IsLibraryProject)(nestProject)) {
67
+ const projectSourceRoot = (0, workspace_utilities_1.GetProjectSourceRoot)(nestProject) + '/lib';
68
+ const moduleFiles = tree
69
+ .getDir(projectSourceRoot)
70
+ .subfiles
71
+ .filter(file => file.endsWith('.module.ts'))
72
+ .filter(file => !file.endsWith(moduleFile));
73
+ if (moduleFiles.length > 0) {
74
+ const moduleFile = moduleFiles[0];
75
+ return (0, ts_morph_transform_1.TsMorphNestProjectTransformRule)({
76
+ project,
77
+ feature,
78
+ shared,
79
+ backend,
80
+ }, (project, [sourceFile]) => {
81
+ (0, ts_morph_1.CoerceNestModuleImport)(sourceFile, {
82
+ moduleName,
83
+ moduleSpecifier: (0, path_1.relative)(moduleFile, moduleFilePath).replace(/\.ts$/, ''),
84
+ });
85
+ }, [moduleFile]);
86
+ }
87
+ }
59
88
  }
60
89
  return (0, schematics_1.noop)();
61
90
  },
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-nest-module.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-nest-module.ts"],"names":[],"mappings":";;AAkCA,4CA+DC;AAjGD,2DAIoC;AACpC,+CAGyB;AACzB,mEAImC;AAMnC,kDAA8C;AAC9C,8DAG+B;AAC/B,+DAA2D;AAC3D,mFAA2E;AAC3E,+DAA0D;AAQ1D,SAAgB,gBAAgB,CAAC,OAAgC;IAC/D,MAAM,EACJ,IAAI,EACJ,OAAO,EACP,OAAO,EACP,MAAM,EACN,SAAS,EACT,OAAO,GACR,GAAG,OAAO,CAAC;IACZ,IAAI,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IACnC,gEAAgE;IAChE,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,IAAhB,gBAAgB,GAAK,GAAG,EAAE,GAAE,CAAC,EAAC;IAC9B,OAAO,IAAA,kBAAK,EAAC;QACX,IAAA,uCAAiB,EAAC;YAChB,OAAO;YACP,OAAO;YACP,MAAM;YACN,OAAO;SACR,CAAC;QACF,IAAA,oDAA+B,EAC7B;YACE,OAAO;YACP,OAAO;YACP,MAAM;YACN,SAAS;YACT,OAAO;SACR,EACD,CAAC,OAAO,EAAE,CAAE,UAAU,CAAE,EAAE,EAAE;YAC1B,MAAM,gBAAgB,GAAG,IAAA,0BAAW,EAAC,UAAU,EAAE,IAAA,oBAAQ,EAAC,IAAI,CAAC,GAAG,QAAQ,EAAE;gBAC1E,UAAU,EAAE,IAAI;gBAChB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,CAAE,IAAI,CAAE;qBACpB;iBACF;aACF,CAAC,CAAC;YACH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB;oBACE,YAAY,EAAE,CAAE,QAAQ,CAAE;oBAC1B,eAAe,EAAE,gBAAgB;iBAClC;aACF,CAAC,CAAC;YAEH,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAC3D,CAAC,EACD,CAAE,GAAI,IAAA,qBAAS,EAAC,IAAI,CAAE,aAAa,CAAE,CACtC;QACD,IAAI,CAAC,EAAE;YACL,MAAM,WAAW,GAAG,IAAA,0CAAoB,EAAC,OAAO,CAAC,CAAC;YAClD,IAAI,IAAA,0CAAoB,EAAC,IAAA,gCAAU,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBAC1E,OAAO,IAAA,wDAAwB,EAAC;oBAC9B,OAAO;oBACP,OAAO;oBACP,MAAM;oBACN,IAAI;oBACJ,SAAS;oBACT,OAAO;iBACR,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAA,iBAAI,GAAE,CAAC;QAChB,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"coerce-nest-module.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-nest-module.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
package/src/test-setup.js DELETED
@@ -1,7 +0,0 @@
1
- "use strict";
2
- var _a, _b;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- const util_1 = require("util");
5
- (_a = global.TextEncoder) !== null && _a !== void 0 ? _a : (global.TextEncoder = util_1.TextEncoder);
6
- (_b = global.TextDecoder) !== null && _b !== void 0 ? _b : (global.TextDecoder = util_1.TextDecoder);
7
- //# sourceMappingURL=test-setup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-setup.js","sourceRoot":"","sources":["../../../../../packages/schematic/ts-morph/src/test-setup.ts"],"names":[],"mappings":";;;AAAA,+BAAgD;AAEhD,MAAA,MAAM,CAAC,WAAW,oCAAlB,MAAM,CAAC,WAAW,GAAK,kBAAkB,EAAC;AAC1C,MAAA,MAAM,CAAC,WAAW,oCAAlB,MAAM,CAAC,WAAW,GAAK,kBAAkB,EAAC"}