@coolon/angular-ui-powerups 1.0.0-alpha.9 → 1.0.0

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
@@ -2,6 +2,27 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ## [1.0.0](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.0.0-alpha.16...v1.0.0) (2020-05-02)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * improved errors when source files are missing from tsconfig ([8fa2144](https://bitbucket.org/coolon/angular-ui-powerups/commit/8fa2144))
11
+
12
+ ## [1.0.0-alpha.16](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.0.0-alpha.15...v1.0.0-alpha.16) (2020-05-02)
13
+
14
+ ## [1.0.0-alpha.15](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.0.0-alpha.14...v1.0.0-alpha.15) (2020-05-02)
15
+
16
+ ## [1.0.0-alpha.14](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.0.0-alpha.13...v1.0.0-alpha.14) (2020-05-02)
17
+
18
+ ## [1.0.0-alpha.13](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.0.0-alpha.12...v1.0.0-alpha.13) (2020-05-02)
19
+
20
+ ## [1.0.0-alpha.12](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.0.0-alpha.11...v1.0.0-alpha.12) (2020-05-02)
21
+
22
+ ## [1.0.0-alpha.11](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.0.0-alpha.10...v1.0.0-alpha.11) (2020-05-02)
23
+
24
+ ## [1.0.0-alpha.10](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.0.0-alpha.9...v1.0.0-alpha.10) (2020-05-02)
25
+
5
26
  ## [1.0.0-alpha.9](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.0.0-alpha.8...v1.0.0-alpha.9) (2020-05-02)
6
27
 
7
28
  ## [1.0.0-alpha.8](https://bitbucket.org/coolon/angular-ui-powerups/compare/v1.0.0-alpha.7...v1.0.0-alpha.8) (2020-05-02)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coolon/angular-ui-powerups",
3
- "version": "1.0.0-alpha.9",
3
+ "version": "1.0.0",
4
4
  "schematics": "./schematics/collection.json",
5
5
  "dependencies": {
6
6
  "ts-morph": "^7.0.3",
@@ -10,6 +10,7 @@ export declare class PlaceBuilder {
10
10
  private sourceRoot;
11
11
  private workspaceProject;
12
12
  private typescriptProject;
13
+ private tsConfigPath;
13
14
  constructor(options: Schema, workspace: experimental.workspace.WorkspaceSchema, context: SchematicContext);
14
15
  loadTypeScriptProject(): Project;
15
16
  process(tree: Tree): Rule;
@@ -13,6 +13,7 @@ class PlaceBuilder {
13
13
  this.workspaceProject = workspace.projects[this.projectName];
14
14
  this.projectType = this.workspaceProject.projectType === 'application' ? 'app' : 'lib';
15
15
  this.sourceRoot = `${this.workspaceProject.sourceRoot}/${this.projectType}`;
16
+ this.tsConfigPath = this.workspaceProject.architect.build.options.tsConfig;
16
17
  this.typescriptProject = this.loadTypeScriptProject();
17
18
  this.context.logger.info(`sourceRoot=${this.sourceRoot}`);
18
19
  this.context.logger.info(`projectName=${this.projectName}`);
@@ -20,16 +21,15 @@ class PlaceBuilder {
20
21
  }
21
22
  loadTypeScriptProject() {
22
23
  // TODO: this barfs if you're not running it from teh project root directory
23
- const tsConfigPath = this.workspaceProject.architect.build.options.tsConfig;
24
- this.context.logger.info(`loading tsConfig from -> ${tsConfigPath}`);
24
+ this.context.logger.info(`loading tsConfig from -> ${this.tsConfigPath}`);
25
25
  try {
26
26
  return new ts_morph_1.Project({
27
- tsConfigFilePath: tsConfigPath
27
+ tsConfigFilePath: this.tsConfigPath
28
28
  });
29
29
  }
30
30
  catch (error) {
31
31
  this.context.logger.error(error.toString());
32
- this.context.logger.fatal(`Failed to load typescript project from: ${tsConfigPath} You probably need to specify the --project option?`);
32
+ this.context.logger.fatal(`Failed to load typescript project from: ${this.tsConfigPath} You probably need to specify the --project option?`);
33
33
  throw error;
34
34
  }
35
35
  }
@@ -84,17 +84,21 @@ class PlaceBuilder {
84
84
  if (!content) {
85
85
  return;
86
86
  }
87
- // this.context.logger.info("project dirs -> " + this.typescriptProject.getRootDirectories().map(d => d.getPath()).join(","))
88
- const sourceFile = this.typescriptProject.getSourceFileOrThrow(`./${filePath}`);
89
- const imports = sourceFile.getImportDeclarations();
90
- sourceFile.getClasses().forEach((classDecl) => {
91
- place_def_1.PlaceDef.scan(sourceFile, classDecl, this.context).onMatch(result => {
92
- const moduleImportPath = `.${filePath.substr(placeRoot.length, filePath.length - placeRoot.length - '.ts'.length)}`;
93
- const definition = result.createDefinition(moduleImportPath);
94
- this.context.logger.info(`${classDecl.getName()}(route: /${definition.fullPath}) -> ${moduleImportPath}`);
95
- placeDefs.push(definition);
87
+ const sourceFile = this.typescriptProject.getSourceFile(`./${filePath}`);
88
+ if (!sourceFile) {
89
+ throw new Error(`${filePath} is not included by ${this.tsConfigPath}. You might need to add an '"include": ["**/*.d.ts"]'`);
90
+ }
91
+ else {
92
+ const imports = sourceFile.getImportDeclarations();
93
+ sourceFile.getClasses().forEach((classDecl) => {
94
+ place_def_1.PlaceDef.scan(sourceFile, classDecl, this.context).onMatch(result => {
95
+ const moduleImportPath = `.${filePath.substr(placeRoot.length, filePath.length - placeRoot.length - '.ts'.length)}`;
96
+ const definition = result.createDefinition(moduleImportPath);
97
+ this.context.logger.info(`${classDecl.getName()}(route: /${definition.fullPath}) -> ${moduleImportPath}`);
98
+ placeDefs.push(definition);
99
+ });
96
100
  });
97
- });
101
+ }
98
102
  });
99
103
  const rootPlaces = this.buildPlaceHierarchy(placeDefs);
100
104
  return placeDefs;
@@ -1 +1 @@
1
- {"version":3,"file":"place-builder.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/schematics/place-routes/place-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"place-builder.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/schematics/place-routes/place-builder.ts"],"names":[],"mappings":"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"}