@rxap/workspace-ts-morph 0.1.0-dev.0 → 0.1.0-dev.1

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
+ # [0.1.0-dev.1](https://gitlab.com/rxap/packages/compare/@rxap/workspace-ts-morph@0.1.0-dev.0...@rxap/workspace-ts-morph@0.1.0-dev.1) (2023-08-16)
7
+
8
+ ### Bug Fixes
9
+
10
+ - change from commonjs to es2022 ([fd0f2ba](https://gitlab.com/rxap/packages/commit/fd0f2bae24eae7c854e96f630076cd5598c30be6))
11
+
6
12
  # [0.1.0-dev.0](https://gitlab.com/rxap/packages/compare/@rxap/workspace-ts-morph@0.0.2-dev.1...@rxap/workspace-ts-morph@0.1.0-dev.0) (2023-08-05)
7
13
 
8
14
  ### Features
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@rxap/workspace-ts-morph",
3
- "version": "0.1.0-dev.0",
4
- "type": "commonjs",
3
+ "version": "0.1.0-dev.1",
4
+ "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public",
7
7
  "directory": "../../../dist/packages/workspace/ts-morph"
@@ -37,7 +37,7 @@
37
37
  "@rxap/utilities": "^16.0.0-dev.6",
38
38
  "@rxap/workspace-utilities": "^0.1.0-dev.2",
39
39
  "ts-morph": "^18.0.0",
40
- "@rxap/node-utilities": "1.1.0-dev.1"
40
+ "@rxap/node-utilities": "1.1.0-dev.2"
41
41
  },
42
42
  "nx-migrations": {
43
43
  "packageGroup": [
@@ -51,7 +51,7 @@
51
51
  }
52
52
  ]
53
53
  },
54
- "gitHead": "4c1ee7cc809aab99f4270e1e4e1fc4f550156b80",
54
+ "gitHead": "bbab80e59acbe435a02e69c9fec022780cf4640d",
55
55
  "main": "./src/index.js",
56
56
  "types": "./src/index.d.ts"
57
57
  }
package/src/index.js CHANGED
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
1
  // region
5
- tslib_1.__exportStar(require("./lib/add-dir"), exports);
6
- tslib_1.__exportStar(require("./lib/apply-ts-morph-project"), exports);
7
- tslib_1.__exportStar(require("./lib/ts-morph-transform"), exports);
2
+ export * from './lib/add-dir';
3
+ export * from './lib/apply-ts-morph-project';
4
+ export * from './lib/ts-morph-transform';
8
5
  // endregion
9
6
  //# sourceMappingURL=index.js.map
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/workspace/ts-morph/src/index.ts"],"names":[],"mappings":";;;AAAA,UAAU;AACV,wDAA8B;AAC9B,uEAA6C;AAC7C,mEAAyC;AACzC,YAAY"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/workspace/ts-morph/src/index.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,cAAc,eAAe,CAAC;AAC9B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,YAAY"}
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AddDir = void 0;
4
- const workspace_utilities_1 = require("@rxap/workspace-utilities");
5
- const path_1 = require("path");
1
+ import { IsGeneratorTreeLike, IsSchematicTreeLike, } from '@rxap/workspace-utilities';
2
+ import { join, relative, } from 'path';
6
3
  /**
7
4
  * Adds all files recursively from a specify path to the project.
8
5
  * @param tree A nx Tree instance
@@ -10,32 +7,31 @@ const path_1 = require("path");
10
7
  * @param project A ts-morph Project instance
11
8
  * @param filter A filter function base on the pathFragment and dirEntry
12
9
  */
13
- function AddDir(tree, directoryPath, project, filter = path => path.endsWith('.ts'), basePath = directoryPath) {
14
- if ((0, workspace_utilities_1.IsSchematicTreeLike)(tree)) {
10
+ export function AddDir(tree, directoryPath, project, filter = path => path.endsWith('.ts'), basePath = directoryPath) {
11
+ if (IsSchematicTreeLike(tree)) {
15
12
  return SchematicAddDir(tree.getDir(directoryPath), project, '', (pathFragment, dirEntry) => filter(pathFragment, dirEntry.path));
16
13
  }
17
- if ((0, workspace_utilities_1.IsGeneratorTreeLike)(tree)) {
14
+ if (IsGeneratorTreeLike(tree)) {
18
15
  if (tree.isFile(directoryPath)) {
19
16
  throw new Error(`The path '${directoryPath}' does not point to a dir entry`);
20
17
  }
21
18
  const children = tree.children(directoryPath);
22
- const files = children.filter(fileOrDirectoryName => tree.isFile((0, path_1.join)(directoryPath, fileOrDirectoryName)));
19
+ const files = children.filter(fileOrDirectoryName => tree.isFile(join(directoryPath, fileOrDirectoryName)));
23
20
  const includeFiles = files.filter(fileName => filter(fileName, directoryPath));
24
21
  for (const fileName of includeFiles) {
25
- const filePath = (0, path_1.join)(directoryPath, fileName);
26
- const projectFilePath = (0, path_1.relative)(basePath, filePath);
22
+ const filePath = join(directoryPath, fileName);
23
+ const projectFilePath = relative(basePath, filePath);
27
24
  if (!project.getSourceFile(projectFilePath)) {
28
25
  project.createSourceFile(projectFilePath, tree.read(filePath).toString('utf-8'));
29
26
  }
30
27
  }
31
- for (const dirName of tree.children(directoryPath).filter(pf => !tree.isFile((0, path_1.join)(directoryPath, pf)))) {
32
- AddDir(tree, (0, path_1.join)(directoryPath, dirName), project, filter, basePath);
28
+ for (const dirName of tree.children(directoryPath).filter(pf => !tree.isFile(join(directoryPath, pf)))) {
29
+ AddDir(tree, join(directoryPath, dirName), project, filter, basePath);
33
30
  }
34
31
  return;
35
32
  }
36
33
  throw new Error('The tree is not a valid nx or angular schematic tree');
37
34
  }
38
- exports.AddDir = AddDir;
39
35
  /**
40
36
  * Adds all files recursively from a specify DirEntry to the project.
41
37
  * @param dir A schematic DirEntry instance
@@ -47,7 +43,7 @@ function SchematicAddDir(dir, project, parentPath = '', filter = pathFragment =>
47
43
  for (const pathFragment of dir.subfiles.filter(pf => filter(pf, dir))) {
48
44
  const fileEntry = dir.file(pathFragment);
49
45
  if (fileEntry) {
50
- const filePath = (0, path_1.join)(parentPath, pathFragment);
46
+ const filePath = join(parentPath, pathFragment);
51
47
  if (!project.getSourceFile(filePath)) {
52
48
  project.createSourceFile(filePath, fileEntry.content.toString('utf-8'));
53
49
  }
@@ -59,7 +55,7 @@ function SchematicAddDir(dir, project, parentPath = '', filter = pathFragment =>
59
55
  for (const pathFragment of dir.subdirs) {
60
56
  const dirEntry = dir.dir(pathFragment);
61
57
  if (dirEntry) {
62
- SchematicAddDir(dirEntry, project, (0, path_1.join)(parentPath, pathFragment), filter);
58
+ SchematicAddDir(dirEntry, project, join(parentPath, pathFragment), filter);
63
59
  }
64
60
  else {
65
61
  throw new Error('The path fragment does not point to a dir entry');
@@ -1 +1 @@
1
- {"version":3,"file":"add-dir.js","sourceRoot":"","sources":["../../../../../../packages/workspace/ts-morph/src/lib/add-dir.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-dir.js","sourceRoot":"","sources":["../../../../../../packages/workspace/ts-morph/src/lib/add-dir.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ApplyTsMorphProject = void 0;
4
- const workspace_utilities_1 = require("@rxap/workspace-utilities");
5
- const path_1 = require("path");
6
- const ts_morph_1 = require("ts-morph");
1
+ import { TreeAdapter, } from '@rxap/workspace-utilities';
2
+ import { join } from 'path';
3
+ import { Project, } from 'ts-morph';
7
4
  function areSame(sourceFile1, sourceFile2) {
8
5
  const leafNodes1 = getLeafNodes(sourceFile1);
9
6
  const leafNodes2 = getLeafNodes(sourceFile2);
@@ -36,7 +33,7 @@ function areSame(sourceFile1, sourceFile2) {
36
33
  }
37
34
  }
38
35
  }
39
- function ApplyTsMorphProject(tree, project, basePath = '', organizeImports = true, fixMissingImports = false) {
36
+ export function ApplyTsMorphProject(tree, project, basePath = '', organizeImports = true, fixMissingImports = false) {
40
37
  if (organizeImports || fixMissingImports) {
41
38
  project
42
39
  .getSourceFiles()
@@ -49,14 +46,14 @@ function ApplyTsMorphProject(tree, project, basePath = '', organizeImports = tru
49
46
  }
50
47
  });
51
48
  }
52
- const treeAdapter = new workspace_utilities_1.TreeAdapter(tree);
49
+ const treeAdapter = new TreeAdapter(tree);
53
50
  project
54
51
  .getSourceFiles()
55
52
  .forEach(sourceFile => {
56
- const filePath = (0, path_1.join)(basePath, sourceFile.getFilePath());
53
+ const filePath = join(basePath, sourceFile.getFilePath());
57
54
  if (tree.exists(filePath)) {
58
55
  const currentContent = treeAdapter.read(filePath).toString('utf-8');
59
- const tmpProject = new ts_morph_1.Project();
56
+ const tmpProject = new Project();
60
57
  const newContent = sourceFile.getFullText();
61
58
  if (!areSame(sourceFile, tmpProject.createSourceFile('/tmp.ts', currentContent))) {
62
59
  treeAdapter.overwrite(filePath, newContent);
@@ -67,5 +64,4 @@ function ApplyTsMorphProject(tree, project, basePath = '', organizeImports = tru
67
64
  }
68
65
  });
69
66
  }
70
- exports.ApplyTsMorphProject = ApplyTsMorphProject;
71
67
  //# sourceMappingURL=apply-ts-morph-project.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"apply-ts-morph-project.js","sourceRoot":"","sources":["../../../../../../packages/workspace/ts-morph/src/lib/apply-ts-morph-project.ts"],"names":[],"mappings":";;;AAAA,mEAGmC;AACnC,+BAA4B;AAC5B,uCAIkB;AAElB,SAAS,OAAO,CAAC,WAAuB,EAAE,WAAuB;IAC/D,MAAM,UAAU,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAE7C,iDAAiD;IACjD,OAAO,IAAI,EAAE;QACX,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;QAEhC,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE;YAC5B,OAAO,IAAI,CAAC;SACb;QACD,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE;YAC5B,OAAO,KAAK,CAAC;SACd;QACD,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE;YACnD,OAAO,KAAK,CAAC;SACd;KACF;IAED,QAAQ,CAAC,CAAC,YAAY,CAAC,UAAsB;QAC3C,KAAK,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAE9B,QAAQ,CAAC,CAAC,UAAU,CAAC,IAAU;YAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACpC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gBACzB,MAAM,IAAI,CAAC;aACZ;iBAAM;gBACL,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE;oBAC5B,KAAK,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;iBAC1B;aACF;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAgB,mBAAmB,CACjC,IAAc,EACd,OAAgB,EAChB,QAAQ,GAAG,EAAE,EACb,eAAe,GAAG,IAAI,EACtB,iBAAiB,GAAG,KAAK;IAEzB,IAAI,eAAe,IAAI,iBAAiB,EAAE;QACxC,OAAO;aACJ,cAAc,EAAE;aAChB,OAAO,CAAC,UAAU,CAAC,EAAE;YACpB,IAAI,iBAAiB,EAAE;gBACrB,UAAU,CAAC,iBAAiB,EAAE,CAAC;aAChC;YACD,IAAI,eAAe,EAAE;gBACnB,UAAU,CAAC,eAAe,EAAE,CAAC;aAC9B;QACH,CAAC,CAAC,CAAC;KACN;IAED,MAAM,WAAW,GAAG,IAAI,iCAAW,CAAC,IAAI,CAAC,CAAC;IAE1C,OAAO;SACJ,cAAc,EAAE;SAChB,OAAO,CAAC,UAAU,CAAC,EAAE;QAEpB,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,QAAQ,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;QAE1D,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;YACzB,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACrE,MAAM,UAAU,GAAG,IAAI,kBAAO,EAAE,CAAC;YACjC,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,gBAAgB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,EAAE;gBAChF,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;aAC7C;SACF;aAAM;YACL,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;SACxD;IAEH,CAAC,CAAC,CAAC;AACP,CAAC;AAxCD,kDAwCC"}
1
+ {"version":3,"file":"apply-ts-morph-project.js","sourceRoot":"","sources":["../../../../../../packages/workspace/ts-morph/src/lib/apply-ts-morph-project.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,GAEZ,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAEL,OAAO,GAER,MAAM,UAAU,CAAC;AAElB,SAAS,OAAO,CAAC,WAAuB,EAAE,WAAuB;IAC/D,MAAM,UAAU,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAE7C,iDAAiD;IACjD,OAAO,IAAI,EAAE;QACX,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;QAEhC,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE;YAC5B,OAAO,IAAI,CAAC;SACb;QACD,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE;YAC5B,OAAO,KAAK,CAAC;SACd;QACD,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE;YACnD,OAAO,KAAK,CAAC;SACd;KACF;IAED,QAAQ,CAAC,CAAC,YAAY,CAAC,UAAsB;QAC3C,KAAK,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAE9B,QAAQ,CAAC,CAAC,UAAU,CAAC,IAAU;YAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACpC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gBACzB,MAAM,IAAI,CAAC;aACZ;iBAAM;gBACL,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE;oBAC5B,KAAK,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;iBAC1B;aACF;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,IAAc,EACd,OAAgB,EAChB,QAAQ,GAAG,EAAE,EACb,eAAe,GAAG,IAAI,EACtB,iBAAiB,GAAG,KAAK;IAEzB,IAAI,eAAe,IAAI,iBAAiB,EAAE;QACxC,OAAO;aACJ,cAAc,EAAE;aAChB,OAAO,CAAC,UAAU,CAAC,EAAE;YACpB,IAAI,iBAAiB,EAAE;gBACrB,UAAU,CAAC,iBAAiB,EAAE,CAAC;aAChC;YACD,IAAI,eAAe,EAAE;gBACnB,UAAU,CAAC,eAAe,EAAE,CAAC;aAC9B;QACH,CAAC,CAAC,CAAC;KACN;IAED,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;IAE1C,OAAO;SACJ,cAAc,EAAE;SAChB,OAAO,CAAC,UAAU,CAAC,EAAE;QAEpB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;QAE1D,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;YACzB,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACrE,MAAM,UAAU,GAAG,IAAI,OAAO,EAAE,CAAC;YACjC,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,gBAAgB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,EAAE;gBAChF,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;aAC7C;SACF;aAAM;YACL,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;SACxD;IAEH,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1,29 +1,26 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TsMorphAngularProjectTransform = exports.TsMorphNestProjectTransform = exports.TsMorphTransform = void 0;
4
- const utilities_1 = require("@rxap/utilities");
5
- const workspace_utilities_1 = require("@rxap/workspace-utilities");
6
- const path_1 = require("path");
7
- const ts_morph_1 = require("ts-morph");
8
- const add_dir_1 = require("./add-dir");
9
- const apply_ts_morph_project_1 = require("./apply-ts-morph-project");
10
- function TsMorphTransform(tree, sourceRoot, cb, options = {}, projectOptions = {}, filePathFilter) {
1
+ import { deepMerge } from '@rxap/utilities';
2
+ import { BuildAngularBasePath, BuildNestBasePath, } from '@rxap/workspace-utilities';
3
+ import { join } from 'path';
4
+ import { IndentationText, Project, QuoteKind, } from 'ts-morph';
5
+ import { AddDir } from './add-dir';
6
+ import { ApplyTsMorphProject } from './apply-ts-morph-project';
7
+ export function TsMorphTransform(tree, sourceRoot, cb, options = {}, projectOptions = {}, filePathFilter) {
11
8
  const filePath = filePathFilter ?
12
9
  Array.isArray(filePathFilter) ?
13
10
  filePathFilter.map(f => f.replace(/\?$/, '')) :
14
11
  [filePathFilter.replace(/\?$/, '')] :
15
12
  undefined;
16
- const project = new ts_morph_1.Project((0, utilities_1.deepMerge)({
13
+ const project = new Project(deepMerge({
17
14
  manipulationSettings: {
18
- indentationText: ts_morph_1.IndentationText.TwoSpaces,
19
- quoteKind: ts_morph_1.QuoteKind.Single,
15
+ indentationText: IndentationText.TwoSpaces,
16
+ quoteKind: QuoteKind.Single,
20
17
  },
21
18
  useInMemoryFileSystem: true,
22
19
  }, projectOptions));
23
20
  if (!options.replace) {
24
- (0, add_dir_1.AddDir)(tree, sourceRoot, project, filePath ?
21
+ AddDir(tree, sourceRoot, project, filePath ?
25
22
  (fileName, dirPath) => {
26
- const fullPath = (0, path_1.join)(dirPath, fileName);
23
+ const fullPath = join(dirPath, fileName);
27
24
  if (dirPath.endsWith(fileName)) {
28
25
  throw new Error(`The dirPath '${dirPath}' ends with the fileName '${fileName}'`);
29
26
  }
@@ -35,11 +32,10 @@ function TsMorphTransform(tree, sourceRoot, cb, options = {}, projectOptions = {
35
32
  if (filePath) {
36
33
  if (Array.isArray(filePath)) {
37
34
  sourceFile = filePath.map((f, index) => {
38
- var _a;
39
35
  let sf = project.getSourceFile(f);
40
36
  if (!sf) {
41
37
  if (Array.isArray(filePathFilter)) {
42
- if (options.replace || ((_a = filePathFilter[index]) === null || _a === void 0 ? void 0 : _a.endsWith('?'))) {
38
+ if (options.replace || filePathFilter[index]?.endsWith('?')) {
43
39
  sf = project.createSourceFile(f, '');
44
40
  }
45
41
  else {
@@ -51,7 +47,7 @@ function TsMorphTransform(tree, sourceRoot, cb, options = {}, projectOptions = {
51
47
  if (index !== 0) {
52
48
  throw new Error('FATAL: The filePathFilter is not an array and the index is not 0');
53
49
  }
54
- if (options.replace || (filePathFilter === null || filePathFilter === void 0 ? void 0 : filePathFilter.endsWith('?'))) {
50
+ if (options.replace || filePathFilter?.endsWith('?')) {
55
51
  sf = project.createSourceFile(f, '');
56
52
  }
57
53
  else {
@@ -67,17 +63,14 @@ function TsMorphTransform(tree, sourceRoot, cb, options = {}, projectOptions = {
67
63
  }
68
64
  }
69
65
  cb(project, sourceFile);
70
- (0, apply_ts_morph_project_1.ApplyTsMorphProject)(tree, project, sourceRoot, false);
66
+ ApplyTsMorphProject(tree, project, sourceRoot, false);
71
67
  }
72
- exports.TsMorphTransform = TsMorphTransform;
73
- function TsMorphNestProjectTransform(tree, options, cb, filePath) {
74
- const basePath = (0, workspace_utilities_1.BuildNestBasePath)(tree, options);
68
+ export function TsMorphNestProjectTransform(tree, options, cb, filePath) {
69
+ const basePath = BuildNestBasePath(tree, options);
75
70
  return TsMorphTransform(tree, basePath, cb, { replace: options.replace }, options.projectOptions, filePath);
76
71
  }
77
- exports.TsMorphNestProjectTransform = TsMorphNestProjectTransform;
78
- function TsMorphAngularProjectTransform(tree, options, cb, filePath) {
79
- const basePath = (0, workspace_utilities_1.BuildAngularBasePath)(tree, options);
72
+ export function TsMorphAngularProjectTransform(tree, options, cb, filePath) {
73
+ const basePath = BuildAngularBasePath(tree, options);
80
74
  return TsMorphTransform(tree, basePath, cb, { replace: options.replace }, options.projectOptions, filePath);
81
75
  }
82
- exports.TsMorphAngularProjectTransform = TsMorphAngularProjectTransform;
83
76
  //# sourceMappingURL=ts-morph-transform.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ts-morph-transform.js","sourceRoot":"","sources":["../../../../../../packages/workspace/ts-morph/src/lib/ts-morph-transform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ts-morph-transform.js","sourceRoot":"","sources":["../../../../../../packages/workspace/ts-morph/src/lib/ts-morph-transform.ts"],"names":[],"mappings":"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"}