Skip to content

Commit df6539d

Browse files
committed
Updated Readme, Changelog and package.jsin.
1 parent 5f1cdbc commit df6539d

8 files changed

+60
-35
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Change Log
22

3+
## Version 1.7.0
4+
5+
- All three graph types: Dependency injection graph, module hierarchy graph and component hierarchy graph can now be saved as a dgml file.
6+
- Component hierarchy dgml command has been removed because its now obsolete.
7+
38
## Version 1.6.0
49

510
- Added Dependency injection graph command that visualizes what services are injected into the components. Graph also include all the inputs, outputs, viewchild, viewchildren, contentchild and contentchildren of each component.

README.md

Lines changed: 34 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ In the visualization the components will by default be colored dark blue and the
4646

4747
The 'Show the component hierarchy' command is used for visualizing the component hierarchy and Angular application. It analyses all the *.component.ts files and all the corresponding template files to determine how the component use each other and then generates a directed graph showing the component hierarchy.
4848

49-
The command uses a vscode webview extension component to render the hierarchy using html, javascript and the [Vis.js](https://visjs.org/index.html) javascript library. This has the downside that copying the generated graph to the clipboard is not yet possible due to limitations in the vscode extension api. So to overcome this limitation the generated graph can be saved as a Png file to the root of the project you are analyzing.
49+
The command uses a vscode webview extension component to render the hierarchy using html, javascript and the [Vis.js](https://visjs.org/index.html) javascript library. This has the downside that copying the generated graph to the clipboard is not yet possible due to limitations in the vscode extension api. So to overcome this limitation the generated graph can be saved as a Png file to the root of the project you are analyzing. You can also save the graph in the Dgml format.
5050

5151
![Show component hierarchy](https://github.com/CoderAllan/vscode-angulartools/raw/main/images/ShowComponentHierarchy.gif)
5252

@@ -107,22 +107,42 @@ See the full list of settings below the screenshot.
107107
| Setting | Description |
108108
| --- | --- |
109109
| angularTools.excludeDirectories | Semicolon separated list of directories that should be excluded when scanning for for Angular components. |
110-
| angularTools.componentHierarchyDgml.defaultGraphFilename | The default filename used when saving a component hierarchy to a Directed Graph Markup Language (Dgml) file. |
111-
| angularTools.componentHierarchyDgml.graphLayout | This is the algorithm used to layout the nodes of the graph. Sugiyama wil try to avoid crossing edges as far as possible. ForceDirected will try to cluster the nodes. |
112-
| angularTools.componentHierarchyDgml.graphDirection | This will make the layout algorithm position the graph nodes in the specified direction. |
113-
| angularTools.componentHierarchyDgml.rootNodeBackgroundColor | The color of the root nodes of the directed graph. The string should be in rgba format. |
110+
| angularTools.dgmlGraph.graphLayout | This is the algorithm used to layout the nodes of the graph. Sugiyama wil try to avoid crossing edges as far as possible. ForceDirected will try to cluster the nodes. |
111+
| angularTools.dgmlGraph.graphDirection | This will make the layout algorithm position the graph nodes in the specified direction. |
112+
| angularTools.dependencyInjectionGraph.pngGraphFilename | The default name used when saving the dependency injection hierarchy graph to a Png file. |
113+
| angularTools.dependencyInjectionGraph.dgmlGraphFilename| The default filename used when saving a dependency injection hierarchy graph to a Directed Graph Markup Language (Dgml) file. |
114+
| angularTools.dependencyInjectionGraph.edgeArrowToType | The default ending of the edges. |
115+
| angularTools.showComponentHierarchy.componentHierarchyPngFilename | The default name used when saving the component hierarchy to a Png file. |
116+
| angularTools.showComponentHierarchy.componentHierarchyDgmlGraphFilename | The default name used when saving the component hierarchy to a Dgml file. |
117+
| angularTools.showComponentHierarchy.edgeArrowToType | The default ending of the edges. |
118+
| angularTools.showModuleHierarchy.moduleHierarchyPngFilename | The default name used when saving the module hierarchy to a Png file. |
119+
| angularTools.showModuleHierarchy.moduleHierarchyDgmlGraphFilename | The default name used when saving the module hierarchy to a Dgml file. |
120+
| angularTools.showModuleHierarchy.edgeArrowToType | The default ending of the edges. |
121+
| angularTools.graphSelection.graphSelectionGuidelineColor | The color of the guidelines used when selecting part of a component hierarchy graph. The string should be in rgb format or standard css color names. |
122+
| angularTools.graphSelection.graphSelectionGuidelineWidth | The width of the guide lines shown when selecting part of a component hierarchy graph |
123+
| angularTools.graphSelection.graphSelectionColor | The color of the selection rectangle used when selecting part of a component hierarchy graph. The string should be in rgb format or standard css color names. |
124+
| angularTools.graphSelection.graphSelectionWidth | The width of the selection rectangle shown when selecting part of a component hierarchy graph |
125+
| angularTools.graphNodes.rootNodeBackgroundColor | The color of the root nodes of the component hierarchy graph. The string should be in rgba format or standard css color names. |
126+
| angularTools.graphNodes.rootNodeNodeShape | The default shape of the nodes representing root nodes. Notice that 'ellipse','circle','database','box' and 'text' have the label inside the shape, the rest have the label outside the shape. |
127+
| angularTools.graphNodes.componentNodeShape | The default shape of the nodes representing components. Notice that 'ellipse','circle','database','box' and 'text' have the label inside the shape, the rest have the label outside the shape. |
128+
| angularTools.graphNodes.moduleNodeBackgroundColor | The default color of the nodes representing modules. |
129+
| angularTools.graphNodes.moduleNodeShape | The default shape of the nodes representing modules. Notice that 'ellipse','circle','database','box' and 'text' have the label inside the shape, the rest have the label outside the shape. |
130+
| angularTools.graphNodes.pipeNodeBackgroundColor | The default color of the nodes representing pipes. |
131+
| angularTools.graphNodes.pipeNodeShape | The default shape of the nodes representing pipes. Notice that 'ellipse','circle','database','box' and 'text' have the label inside the shape, the rest have the label outside the shape. |
132+
| angularTools.graphNodes.directiveNodeBackgroundColor | The default color of the nodes representing directives. |
133+
| angularTools.graphNodes.directiveNodeShape | The default shape of the nodes representing directives. Notice that 'ellipse','circle','database','box' and 'text' have the label inside the shape, the rest have the label outside the shape. |
134+
| angularTools.graphNodes.injectableNodeBackgroundColor | The default color of the nodes representing injected components. |
135+
| angularTools.graphNodes.injectableNodeShape | The default shape of the nodes representing directives. Notice that 'ellipse','circle','database','box' and 'text' have the label inside the shape, the rest have the label outside the shape. |
136+
| angularTools.graphNodes.maximumNodeLabelLength | The maximum length of the label for the nodes in the hierarchy. If the class name, module definition, module imports, exports, directives or pipes are longer than the specified number of characters, it will be truncated to this length. |
137+
| angularTools.edges.importEdgeColor | The default color of the edges representing imports. |
138+
| angularTools.edges.exportEdgeColor | The default color of the edges representing exports. |
139+
| angularTools.edges.injectableEdgeColor | The default color of the edges representing injectables. |
140+
| angularTools.edges.usesEdgeColor | The default color of the edges representing components using other components. |
114141
| angularTools.packageJsonMarkdownFilename | The default filename used when saving the packages.json as a markdown file. |
115142
| angularTools.projectDirectoryStructureMarkdownFilename | The default filename used when saving the project directory structure as a markdown file. |
116-
| angularTools.showComponentHierarchy.rootNodeBackgroundColor | The color of the root nodes of the component hierarchy graph. The string should be in rgba format or standard css color names. |
117-
| angularTools.showComponentHierarchy.edgeArrowToType | The default ending of the edges. |
118-
| angularTools.showComponentHierarchy.nodeShape | The shape of the nodes in the component hierarchy graph. Notice that 'ellipse','circle','database','box' and 'text' have the label inside the shape, the rest have the label outside the shape. |
119-
| angularTools.showComponentHierarchy.graphSelectionGuidelineColor | The color of the guidelines used when selecting part of a component hierarchy graph. The string should be in rgba format or standard css color names. |
120-
| angularTools.showComponentHierarchy.graphSelectionGuidelineWidth | The width of the guide lines shown when selecting part of a component hierarchy graph |
121-
| angularTools.showComponentHierarchy.graphSelectionColor | The color of the selection rectangle used when selecting part of a component hierarchy graph. The string should be in rgba format or standard css color names. |
122-
| angularTools.showComponentHierarchy.graphSelectionWidth | The width of the selection rectangle shown when selecting part of a component hierarchy graph |
123-
| angularTools.showComponentHierarchy.componentHierarchyFilename | The default name used when saving the component hierarchy to a Png file. |
124143
| angularTools.componentHierarchyMarkdownFilename | The default name used when saving the component hierarchy to a markdown file. |
125-
| angularTools.modulesToMarkdownFilename | The default name used when saving the modules to a markdown file. |
144+
| angularTools.modulesToMarkdownFilename | The default name used when saving the project module to a markdown file. |
145+
126146

127147
## Third party components and resources
128148

images/ShowComponentHierarchy.gif

1.65 MB
Loading

images/ShowComponentHierarchy2.gif

261 KB
Loading

images/ShowComponentHierarchy3.gif

296 KB
Loading
1.37 MB
Loading

images/ShowModuleHierarchy.gif

2.86 MB
Loading

package.json

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"displayName": "AngularTools",
55
"description": "AngularTools is a collection of tools for exploring an Angular project, help you with documenting, reverse engineering a project or help when refactoring.",
66
"icon": "logo.png",
7-
"version": "1.6.0",
7+
"version": "1.7.0",
88
"license": "MIT",
99
"repository": "https://github.com/CoderAllan/vscode-angulartools",
1010
"author": {
@@ -99,16 +99,16 @@
9999
],
100100
"description": "This will make the layout algorithm position the graph nodes in the specified direction."
101101
},
102-
"angularTools.dependencyInjectionGraph.defaultGraphFilename": {
103-
"type": "string",
104-
"default": "DependencyInjectionGraph.dgml",
105-
"description": "The default filename used when saving a dependency injection hierarchy graph to a Directed Graph Markup Language (Dgml) file."
106-
},
107-
"angularTools.dependencyInjectionGraph.componentHierarchyPngFilename": {
102+
"angularTools.dependencyInjectionGraph.pngGraphFilename": {
108103
"type": "string",
109104
"default": "DependencyInjectionGraph.png",
110105
"description": "The default name used when saving the dependency injection hierarchy graph to a Png file."
111106
},
107+
"angularTools.dependencyInjectionGraph.dgmlGraphFilename": {
108+
"type": "string",
109+
"default": "DependencyInjectionGraph.dgml",
110+
"description": "The default filename used when saving a dependency injection hierarchy graph to a Directed Graph Markup Language (Dgml) file."
111+
},
112112
"angularTools.dependencyInjectionGraph.edgeArrowToType": {
113113
"type": "string",
114114
"default": "triangle",
@@ -127,6 +127,16 @@
127127
],
128128
"description": "The default ending of the edges."
129129
},
130+
"angularTools.showComponentHierarchy.componentHierarchyPngFilename": {
131+
"type": "string",
132+
"default": "ComponentHierarchy.png",
133+
"description": "The default name used when saving the component hierarchy to a Png file."
134+
},
135+
"angularTools.showComponentHierarchy.componentHierarchyDgmlGraphFilename": {
136+
"type": "string",
137+
"default": "ComponentHierarchy.dgml",
138+
"description": "The default name used when saving the component hierarchy to a Dgml file."
139+
},
130140
"angularTools.showComponentHierarchy.edgeArrowToType": {
131141
"type": "string",
132142
"default": "triangle",
@@ -145,16 +155,6 @@
145155
],
146156
"description": "The default ending of the edges."
147157
},
148-
"angularTools.showComponentHierarchy.componentHierarchyPngFilename": {
149-
"type": "string",
150-
"default": "ComponentHierarchy.png",
151-
"description": "The default name used when saving the component hierarchy to a Png file."
152-
},
153-
"angularTools.showComponentHierarchy.componentHierarchyDgmlGraphFilename": {
154-
"type": "string",
155-
"default": "ComponentHierarchy.dgml",
156-
"description": "The default name used when saving the component hierarchy to a Dgml file."
157-
},
158158
"angularTools.showModuleHierarchy.moduleHierarchyPngFilename": {
159159
"type": "string",
160160
"default": "ModuleHierarchy.png",
@@ -186,7 +186,7 @@
186186
"angularTools.graphSelection.graphSelectionGuidelineColor": {
187187
"type": "string",
188188
"default": "blue",
189-
"description": "The color of the guidelines used when selecting part of a component hierarchy graph. The string should be in rgba format or standard css color names."
189+
"description": "The color of the guidelines used when selecting part of a component hierarchy graph. The string should be in rgb format or standard css color names."
190190
},
191191
"angularTools.graphSelection.graphSelectionGuidelineWidth": {
192192
"type": "number",
@@ -196,7 +196,7 @@
196196
"angularTools.graphSelection.graphSelectionColor": {
197197
"type": "string",
198198
"default": "red",
199-
"description": "The color of the selection rectangle used when selecting part of a component hierarchy graph. The string should be in rgba format or standard css color names."
199+
"description": "The color of the selection rectangle used when selecting part of a component hierarchy graph. The string should be in rgb format or standard css color names."
200200
},
201201
"angularTools.graphSelection.graphSelectionWidth": {
202202
"type": "number",
@@ -205,8 +205,8 @@
205205
},
206206
"angularTools.graphNodes.rootNodeBackgroundColor": {
207207
"type": "string",
208-
"default": "#00FF00",
209-
"description": "The color of the root nodes of the component hierarchy graph. The string should be in rgba format or standard css color names."
208+
"default": "#00ff00",
209+
"description": "The color of the root nodes of the component hierarchy graph. The string should be in rgb format or standard css color names."
210210
},
211211
"angularTools.graphNodes.rootNodeNodeShape": {
212212
"type": "string",

0 commit comments

Comments
 (0)