Merge: nitweb: misc fixes
[nit.git] / share / nitweb / views / module.html
1 <ul class='nav nav-tabs'>
2 <li role='presentation' class='active'>
3 <a data-toggle='tab' data-target='#doc'>
4 <span class='glyphicon glyphicon-book'/> Doc
5 </a>
6 </li>
7 <li role='presentation'>
8 <a data-toggle='tab' data-target='#graph' ng-click="entityCtrl.loadEntityGraph()">
9 <span class='glyphicon glyphicon-object-align-vertical'/> Imports
10 </a>
11 </li>
12 <li role='presentation'>
13 <a data-toggle='tab' data-target='#code' ng-click="entityCtrl.loadEntityCode()">
14 <span class='glyphicon glyphicon-console'/> Code
15 </a>
16 </li>
17 <li role='presentation'>
18 <a data-toggle='tab' data-target='#defs' ng-click="entityCtrl.loadEntityDefs()">
19 <span class='glyphicon glyphicon-asterisk'/> Class definitions
20 </a>
21 </li>
22 <li role='presentation'>
23 <a data-toggle='tab' role='tab' data-target='#metrics' aria-controls='metrics' ng-click='entityCtrl.loadStructuralMetrics()'>
24 <span class='glyphicon glyphicon-stats'/> Metrics
25 </a>
26 </li>
27 </ul>
28
29 <div class='tab-content'>
30 <div role='tabpanel' class='tab-pane fade in active' id='doc'>
31 <div class='col-xs-3'>
32 <ui-summary target='#summary-content' />
33 </div>
34 <div class='col-xs-9' id='summary-content'>
35 <entity-card mentity='mentity' default-tab='doc' no-synopsis='true' />
36
37 <entity-list list-title='Imported modules' list-entities='mentity.imports'
38 list-object-filter='{}' />
39
40 <entity-list list-title='Introduced classes' list-entities='mentity.intro_mclasses'
41 list-object-filter='{}' />
42
43 <entity-list list-title='Class redefinitions' list-entities='mentity.redef_mclassdefs'
44 list-object-filter='{}' />
45 </div>
46 </div>
47 <div role='tabpanel' class='tab-pane fade' id='code'>
48 <div class='card'>
49 <div class='card-body'>
50 <pre ng-bind-html='code' />
51 <entity-location mentity='mentity' />
52 </div>
53 </div>
54 </div>
55 <div role='tabpanel' class='tab-pane fade' id='defs'>
56 <entity-list list-title='Class definitions' list-entities='defs'
57 list-object-filter='{}' />
58 </div>
59 <div class='tab-pane fade' id='graph'>
60 <div class='card'>
61 <div class='card-body text-center'>
62 <entity-graph mentity='mentity' graph='graph' />
63 </div>
64 </div>
65 </div>
66 <div role='tabpanel' class='tab-pane fade' id='metrics'>
67 <div class='card'>
68 <div class='card-body container-fluid'>
69 <h3 class='card-heading'>Module importation</h3>
70 <div class='col-sm-6'>
71 <h4>
72 Importation metrics
73 </h4>
74 <dl class='dl-horizontal'>
75 <dt>{{metrics.mmodule.mnoa.values[mentity.full_name].value}}</dt>
76 <dd>ancestors</dd>
77 <dt>{{metrics.mmodule.mnop.values[mentity.full_name].value}}</dt>
78 <dd>direct parents</dd>
79 <dt>{{metrics.mmodule.mnoc.values[mentity.full_name].value}}</dt>
80 <dd>direct children</dd>
81 <dt>{{metrics.mmodule.mnod.values[mentity.full_name].value}}</dt>
82 <dd>descendants</dd>
83 </dl>
84 <dl class='dl-horizontal'>
85 <dt>{{metrics.mmodule.mdit.values[mentity.full_name].value}}</dt>
86 <dd>Depth in Inheritance Tree</dd>
87 </dl>
88 </div>
89 </div>
90 </div>
91 <div class='card'>
92 <div class='card-body container-fluid'>
93 <h3 class='card-heading'>Module definitions</h3>
94 <div class='col-sm-6'>
95 <h4>
96 Class definition kinds
97 <small>({{metrics.mmodule['mnbi'].values[mentity.full_name].value +
98 metrics.mclass['mnbc'].values[mentity.full_name].value}}
99 class definitions)</small>
100 </h4>
101 <chart-module-definitions-kind chart-id='chartDefinitionsKind'
102 chart-metrics='metrics.mmodule' />
103 </div>
104 <div class='col-sm-6'>
105 <h4>
106 Class definition inheritance
107 <small>({{metrics.mmodule['mnbd'].values[mentity.full_name].value}}
108 accessible definitions)</small>
109 </h4>
110 <chart-module-definitions-inh chart-id='chartDefinitionsInh'
111 chart-metrics='metrics.mmodule' />
112 </div>
113 </div>
114 </div>
115 <metrics-list
116 list-id='classes_inheritance'
117 list-title='Classes inheritance'
118 list-metrics='metrics.mclasses'
119 list-metrics-names='["cdit", "cnoa", "cnop", "cnoc", "cnod"]'
120 list-metrics-default='"cdit"' />
121 <metrics-list
122 list-id='classes_properties'
123 list-title='Classes properties'
124 list-metrics='metrics.mclasses'
125 list-metrics-names='["cnbp", "cnba", "cnbip", "cnbrp", "cnbhp", "cnblp"]'
126 list-metrics-default='"cnbp"' />
127 </div>
128 </div>