Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(172)

Side by Side Diff: dart/runtime/bin/vmservice/client/deployed/web/index.html

Issue 119673004: Version 1.1.0-dev.5.2 (Closed) Base URL: http://dart.googlecode.com/svn/trunk/
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 <!DOCTYPE html><html><head><script src="packages/shadow_dom/shadow_dom.debug.js" ></script> 1 <!DOCTYPE html><html><head><script src="packages/shadow_dom/shadow_dom.debug.js" ></script>
2 <script src="packages/custom_element/custom-elements.debug.js"></script> 2 <script src="packages/custom_element/custom-elements.debug.js"></script>
3 <script src="packages/browser/interop.js"></script> 3 <script src="packages/browser/interop.js"></script>
4 4
5 <title>Dart VM Observatory</title> 5 <title>Dart VM Observatory</title>
6 <meta charset="utf-8"> 6 <meta charset="utf-8">
7 <link type="text/css" rel="stylesheet" href="bootstrap_css/css/bootstrap.min.c ss"> 7 <link type="text/css" rel="stylesheet" href="bootstrap_css/css/bootstrap.min.c ss">
8 8
9 <script src="index.html_bootstrap.dart.js"></script> 9 <script src="index.html_bootstrap.dart.js"></script>
10 10
(...skipping 11 matching lines...) Expand all
22 <ul class="list-group"> 22 <ul class="list-group">
23 <template repeat="{{ bpt in msg['breakpoints'] }}"> 23 <template repeat="{{ bpt in msg['breakpoints'] }}">
24 <li class="list-group-item"> 24 <li class="list-group-item">
25 {{ bpt }} 25 {{ bpt }}
26 </li> 26 </li>
27 </template> 27 </template>
28 </ul> 28 </ul>
29 </template> 29 </template>
30 </template> 30 </template>
31 31
32 </polymer-element><polymer-element name="error-view" extends="observatory-elemen t"> 32 </polymer-element><polymer-element name="service-ref" extends="observatory-eleme nt">
33
34 </polymer-element><polymer-element name="class-ref" extends="service-ref">
35 <template>
36 <a href="{{ url }}">{{ name }}</a>
37 </template>
38
39 </polymer-element>
40 <polymer-element name="error-view" extends="observatory-element">
33 <template> 41 <template>
34 <div class="row"> 42 <div class="row">
35 <div class="col-md-8 col-md-offset-2"> 43 <div class="col-md-8 col-md-offset-2">
36 <div class="panel panel-danger"> 44 <div class="panel panel-danger">
37 <div class="panel-heading">Error</div> 45 <div class="panel-heading">Error</div>
38 <div class="panel-body"> 46 <div class="panel-body">
39 <template if="{{ (error_obj == null) || (error_obj['type'] != 'Languag eError') }}"> 47 <template if="{{ (error_obj == null) || (error_obj['type'] != 'Languag eError') }}">
40 <p>{{ error }}</p> 48 <p>{{ error }}</p>
41 </template> 49 </template>
42 <template if="{{ (error_obj != null) &amp;&amp; (error_obj['type'] == 'LanguageError') }}"> 50 <template if="{{ (error_obj != null) &amp;&amp; (error_obj['type'] == 'LanguageError') }}">
43 <pre>{{ error_obj['error_msg'] }}</pre> 51 <pre>{{ error_obj['error_msg'] }}</pre>
44 </template> 52 </template>
45 </div> 53 </div>
46 </div> 54 </div>
47 </div> 55 </div>
48 </div> 56 </div>
49 </template> 57 </template>
50 58
51 </polymer-element><polymer-element name="field-ref" extends="observatory-element "> 59 </polymer-element><polymer-element name="field-ref" extends="service-ref">
52 <template> 60 <template>
53 <div> 61 <div>
54 <template if="{{ field['final'] }}"> final </template> 62 <template if="{{ ref['final'] }}"> final </template>
55 <template if="{{ field['const'] }}"> const </template> 63 <template if="{{ ref['const'] }}"> const </template>
56 <template if="{{ (field['declared_type']['name'] == 'dynamic' &amp;&amp; !fiel d['final'] &amp;&amp; !field['const']) }}"> 64 <template if="{{ (ref['declared_type']['name'] == 'dynamic' &amp;&amp; !ref['f inal'] &amp;&amp; !ref['const']) }}">
57 var 65 var
58 </template> 66 </template>
59 <template if="{{ (field['declared_type']['name'] != 'dynamic') }}"> 67 <template if="{{ (ref['declared_type']['name'] != 'dynamic') }}">
60 <a href="{{ app.locationManager.currentIsolateClassLink(field['declared_type'] ['id']) }}"> 68 <class-ref app="{{ app }}" ref="{{ ref['declared_type'] }}"></class-ref>
61 {{ field['declared_type']['user_name'] }} </a>
62 </template> 69 </template>
63 <a href="{{ app.locationManager.currentIsolateObjectLink(field['id'])}}"> 70 <a href="{{ url }}">{{ name }}</a>
64 {{ field['user_name'] }} </a>
65 </div> 71 </div>
66 </template> </polymer-element><polymer-element name="instance-ref" extends="obs ervatory-element"> 72 </template> </polymer-element><polymer-element name="function-ref" extends="ser vice-ref">
73 <template>
74 <a href="{{ url }}">{{ name }}</a>
75 </template>
76
77 </polymer-element><polymer-element name="instance-ref" extends="service-ref">
67 <template> 78 <template>
68 <div> 79 <div>
69 <template if="{{ (instance['type'] == 'null') }}"> 80 <template if="{{ (ref['type'] == 'null') }}">
70 {{ "null" }} 81 {{ "null" }}
71 </template> 82 </template>
72 <template if="{{ (instance['type'] != 'null') }}"> 83 <template if="{{ (ref['type'] != 'null') }}">
73 <a href="{{ app.locationManager.currentIsolateObjectLink(instance['id'])}}"> 84 <a href="{{ url }}">{{ name }} </a>
74 {{ instance['preview'] }}
75 </a>
76 </template> 85 </template>
77 </div> 86 </div>
78 </template> </polymer-element><polymer-element name="class-view" extends="obser vatory-element"> 87 </template>
88
89 </polymer-element><polymer-element name="library-ref" extends="service-ref">
90 <template>
91 <a href="{{ url }}">{{ name }}</a>
92 </template>
93
94 </polymer-element><polymer-element name="class-view" extends="observatory-elemen t">
79 <template> 95 <template>
80 <div class="row"> 96 <div class="row">
81 <div class="col-md-8 col-md-offset-2"> 97 <div class="col-md-8 col-md-offset-2">
82 <div class="panel panel-warning"> 98 <div class="panel panel-warning">
83 <div class="panel-heading"> 99 <div class="panel-heading">
84 class <strong>{{ cls['user_name'] }}</strong> 100 class <strong>{{ cls['user_name'] }}</strong>
85 <template if="{{ cls['super']['type'] != 'Null' }}"> 101 <template if="{{ cls['super']['type'] != 'Null' }}">
86 extends 102 extends
87 <a href="{{ app.locationManager.currentIsolateClassLink(cls['super'] ['id'])}}"> 103 <class-ref app="{{ app }}" ref="{{ cls['super'] }}"></class-ref>
88 {{ cls['super']['user_name'] }}
89 </a>
90 </template> 104 </template>
91 <a class="pull-right" href="{{ app.locationManager.currentIsolateObjec tLink(cls['library']['id'])}}"> 105 <library-ref app="{{ app }}" ref="{{ cls['library'] }}"></library-ref>
92 {{ cls['library']['name'] }}
93 </a>
94 </div> 106 </div>
95 <div class="panel-body"> 107 <div class="panel-body">
96 <table class="table table-hover"> 108 <table class="table table-hover">
97 <tbody> 109 <tbody>
98 <tr> 110 <tr>
99 <td>Abstract</td><td>{{ cls['abstract'] }}</td> 111 <td>Abstract</td><td>{{ cls['abstract'] }}</td>
100 </tr> 112 </tr>
101 <tr> 113 <tr>
102 <td>Const</td><td>{{ cls['const'] }}</td> 114 <td>Const</td><td>{{ cls['const'] }}</td>
103 </tr> 115 </tr>
104 <tr> 116 <tr>
105 <td>Finalized</td><td>{{ cls['const'] }}</td> 117 <td>Finalized</td><td>{{ cls['const'] }}</td>
106 </tr> 118 </tr>
107 <tr> 119 <tr>
108 <td>Implemented</td><td>{{ cls['implemented'] }}</td> 120 <td>Implemented</td><td>{{ cls['implemented'] }}</td>
109 </tr> 121 </tr>
110 <tr> 122 <tr>
111 <td>Patch</td><td>{{ cls['patch'] }}</td> 123 <td>Patch</td><td>{{ cls['patch'] }}</td>
112 </tr> 124 </tr>
113 <tr> 125 <tr>
114 <td>VM Name</td><td>{{ cls['name'] }}</td> 126 <td>VM Name</td><td>{{ cls['name'] }}</td>
115 </tr> 127 </tr>
116 </tbody> 128 </tbody>
117 </table> 129 </table>
118 <template if="{{ cls['error'] == null }}"> 130 <template if="{{ cls['error'] == null }}">
119 <blockquote><strong>Fields</strong></blockquote> 131 <blockquote><strong>Fields</strong></blockquote>
120 <table class="table table-hover"> 132 <table class="table table-hover">
121 <tbody> 133 <tbody>
122 <tr template="" repeat="{{ field in cls['fields'] }}"> 134 <tr template="" repeat="{{ field in cls['fields'] }}">
123 <td><field-ref app="{{ app }}" field="{{ field }}"></field-ref ></td> 135 <td><field-ref app="{{ app }}" ref="{{ field }}"></field-ref>< /td>
124 <td><instance-ref app="{{ app }}" instance="{{ field['value'] }}"></instance-ref></td> 136 <td><instance-ref app="{{ app }}" ref="{{ field['value'] }}">< /instance-ref></td>
125 </tr> 137 </tr>
126 </tbody> 138 </tbody>
127 </table> 139 </table>
128 <blockquote><strong>Functions</strong></blockquote> 140 <blockquote><strong>Functions</strong></blockquote>
129 <table class="table table-hover"> 141 <table class="table table-hover">
130 <thead> 142 <thead>
131 <tr> 143 <tr>
132 <th>User Name</th> 144 <th>User Name</th>
133 <th>VM Name</th> 145 <th>VM Name</th>
134 </tr> 146 </tr>
135 </thead> 147 </thead>
136 <tbody> 148 <tbody>
137 <tr template="" repeat="{{ function in cls['functions'] }}"> 149 <tr template="" repeat="{{ function in cls['functions'] }}">
138 <td><a href="{{ app.locationManager.currentIsolateObjectLink(f unction['id'])}}">{{ function['user_name'] }}</a></td> 150 <td><function-ref app="{{ app }}" ref="{{ function }}"></funct ion-ref></td>
139 <td><a href="{{ app.locationManager.currentIsolateObjectLink(f unction['id'])}}">{{ function['name'] }}</a></td> 151 <td><function-ref app="{{ app }}" ref="{{ function }}" interna l=""></function-ref></td>
140 </tr> 152 </tr>
141 </tbody> 153 </tbody>
142 </table> 154 </table>
143 </template> 155 </template>
144 <template if="{{ cls['error'] != null }}"> 156 <template if="{{ cls['error'] != null }}">
145 <error-view error_obj="{{ cls['error'] }}"></error-view> 157 <error-view error_obj="{{ cls['error'] }}"></error-view>
146 </template> 158 </template>
147 </div> 159 </div>
148 </div> 160 </div>
149 </div> 161 </div>
150 </div> 162 </div>
151 </template> 163 </template>
152 164
165 </polymer-element>
166 <polymer-element name="code-ref" extends="service-ref">
167 <template>
168 <a href="{{ url }}">{{ name }}</a>
169 </template>
170
153 </polymer-element><polymer-element name="disassembly-entry" extends="observatory -element"> 171 </polymer-element><polymer-element name="disassembly-entry" extends="observatory -element">
154 <template> 172 <template>
155 <div class="row"> 173 <div class="row">
156 <template if="{{ instruction['type'] == 'DisassembledInstructionComment' }}" > 174 <template if="{{ instruction['type'] == 'DisassembledInstructionComment' }}" >
157 <div class="col-md-2"></div> 175 <div class="col-md-2"></div>
158 <div class="col-md-2"></div> 176 <div class="col-md-2"></div>
159 <div class="col-md-4"><code>{{ instruction['comment'] }}</code></div> 177 <div class="col-md-4"><code>{{ instruction['comment'] }}</code></div>
160 </template> 178 </template>
161 <template if="{{ instruction['type'] == 'DisassembledInstruction' }}"> 179 <template if="{{ instruction['type'] == 'DisassembledInstruction' }}">
162 <div class="col-md-2"></div> 180 <div class="col-md-2"></div>
163 <div class="col-md-2">{{ instruction['pc'] }}</div> 181 <div class="col-md-2">{{ instruction['pc'] }}</div>
164 <div class="col-md-4"> 182 <div class="col-md-4">
165 <code>{{ instruction['hex'] }} {{ instruction['human'] }}</code> 183 <code>{{ instruction['hex'] }} {{ instruction['human'] }}</code>
166 </div> 184 </div>
167 </template> 185 </template>
168 </div> 186 </div>
169 </template> 187 </template>
170 188
171 </polymer-element><polymer-element name="code-view" extends="observatory-element "> 189 </polymer-element><polymer-element name="code-view" extends="observatory-element ">
172 <template> 190 <template>
173 <div class="row"> 191 <div class="row">
174 <div class="col-md-8 col-md-offset-2"> 192 <div class="col-md-8 col-md-offset-2">
175 <div class="{{ cssPanelClass }}"> 193 <div class="{{ cssPanelClass }}">
176 <div class="panel-heading"> 194 <div class="panel-heading">
177 <a href="{{ app.locationManager.currentIsolateObjectLink(code['functio n']['id'])}}"> 195 <function-ref app="{{ app }}" ref="{{ code['function'] }}"></function- ref>
178 {{ code['function']['user_name'] }} ({{ code['function']['name'] }})
179 </a>
180 </div> 196 </div>
181 <div class="panel-body"> 197 <div class="panel-body">
182 <div class="row"> 198 <div class="row">
183 <div class="col-md-2"><strong>Samples</strong></div> 199 <div class="col-md-2"><strong>Samples</strong></div>
184 <div class="col-md-2"><strong>Address</strong></div> 200 <div class="col-md-2"><strong>Address</strong></div>
185 <div><strong>Instruction</strong></div> 201 <div><strong>Instruction</strong></div>
186 </div> 202 </div>
187 <template repeat="{{ instruction in code['disassembly'] }}"> 203 <template repeat="{{ instruction in code['disassembly'] }}">
188 <disassembly-entry instruction="{{ instruction }}"> 204 <disassembly-entry instruction="{{ instruction }}">
189 </disassembly-entry> 205 </disassembly-entry>
(...skipping 18 matching lines...) Expand all
208 224
209 </polymer-element><polymer-element name="field-view" extends="observatory-elemen t"> 225 </polymer-element><polymer-element name="field-view" extends="observatory-elemen t">
210 <template> 226 <template>
211 <div class="row"> 227 <div class="row">
212 <div class="col-md-8 col-md-offset-2"> 228 <div class="col-md-8 col-md-offset-2">
213 <div class="panel panel-warning"> 229 <div class="panel panel-warning">
214 <div class="panel-heading"> 230 <div class="panel-heading">
215 <template if="{{ field['static'] }}">static</template> 231 <template if="{{ field['static'] }}">static</template>
216 <template if="{{ field['final'] }}">final</template> 232 <template if="{{ field['final'] }}">final</template>
217 <template if="{{ field['const'] }}">const</template> 233 <template if="{{ field['const'] }}">const</template>
218 {{ field['user_name'] }} ({{ field['name'] }}) 234 {{ field['user_name'] }} ({{ field['name'] }})
219 <a class="pull-right" href="{{ app.locationManager.currentIsolateClass Link(field['class']['id'])}}"> 235 <class-ref app="{{ app }}" ref="{{ field['class'] }}"></class-ref>
220 {{ field['class']['user_name'] }}
221 </a>
222 </div> 236 </div>
223 <div class="panel-body"> 237 <div class="panel-body">
224 <template if="{{ field['guard_class'] == 'dynamic'}}"> 238 <template if="{{ field['guard_class'] == 'dynamic'}}">
225 <div class="alert alert-danger"> 239 <div class="alert alert-danger">
226 Field has been assigned multiple types. If a field is only ever 240 Field has been assigned multiple types. If a field is only ever
227 assigned a single type, performance may improve. 241 assigned a single type, performance may improve.
228 </div> 242 </div>
229 </template> 243 </template>
230 <template if="{{ field['guard_class'] != 'dynamic'}}"> 244 <template if="{{ (field['guard_class'] != 'dynamic') &amp;&amp; (field[' guard_class'] != 'unknown') }}">
231 <div class="alert alert-success">Field has monomorphic type</div> 245 <div class="alert alert-success">Field has monomorphic type</div>
232 <template if="{{ (field['guard_class'] != 'dynamic') &amp;&amp; 246 <template if="{{ (field['guard_class'] != 'dynamic') &amp;&amp;
233 field['guard_nullable'] }}"> 247 field['guard_nullable'] }}">
234 <div class="alert alert-info"> 248 <div class="alert alert-info">
235 Field has been assigned null. If a field is never assigned null, 249 Field has been assigned null. If a field is never assigned null,
236 performance may improve. 250 performance may improve.
237 </div> 251 </div>
238 </template> 252 </template>
239 <blockquote> 253 <blockquote>
240 <a href="{{ app.locationManager.currentIsolateClassLink(field['guard _class']['id'])}}"> 254 <class-ref app="{{ app }}" ref="{{ field['guard_class'] }}"></class- ref>
241 {{ field['guard_class']['user_name'] }}
242 </a>
243 </blockquote> 255 </blockquote>
244 </template> 256 </template>
245 </div> 257 </div>
246 </div> 258 </div>
247 </div> 259 </div>
248 </div> 260 </div>
249 </template> 261 </template>
250 262
251 </polymer-element><polymer-element name="function-view" extends="observatory-ele ment"> 263 </polymer-element><polymer-element name="function-view" extends="observatory-ele ment">
252 <template> 264 <template>
253 <div class="row"> 265 <div class="row">
254 <div class="col-md-8 col-md-offset-2"> 266 <div class="col-md-8 col-md-offset-2">
255 <div class="panel panel-warning"> 267 <div class="panel panel-warning">
256 <div class="panel-heading"> 268 <div class="panel-heading">
257 {{ function['user_name'] }} ({{ function['name'] }}) 269 {{ function['user_name'] }} ({{ function['name'] }})
258 <a class="pull-right" href="{{ app.locationManager.currentIsolateClass Link(function['class']['id'])}}"> 270 <class-ref app="{{ app }}" ref="{{ function['class'] }}"></class-ref>
259 {{ function['class']['name'] }}
260 </a>
261 </div> 271 </div>
262 <div class="panel-body"> 272 <div class="panel-body">
263 <div> 273 <div>
264 <a class="btn btn-primary" href="{{ app.locationManager.currentIsolate ObjectLink(function['code']['id'])}}">Current Code</a> 274 <code-ref app="{{ app }}" ref="{{ function['code'] }}"></code-ref>
265 <a class="btn btn-info" href="{{ app.locationManager.currentIsolateObj ectLink(function['unoptimized_code']['id'])}}">Unoptimized Code</a> 275 <code-ref app="{{ app }}" ref="{{ function['unoptimized_code'] }}"></c ode-ref>
266 </div> 276 </div>
267 <table class="table table-hover"> 277 <table class="table table-hover">
268 <tbody> 278 <tbody>
269 <tr> 279 <tr>
270 <td>static</td><td>{{ function['is_static'] }}</td> 280 <td>static</td><td>{{ function['is_static'] }}</td>
271 </tr> 281 </tr>
272 <tr> 282 <tr>
273 <td>Const</td><td>{{ function['is_const'] }}</td> 283 <td>Const</td><td>{{ function['is_const'] }}</td>
274 </tr> 284 </tr>
275 <tr> 285 <tr>
(...skipping 19 matching lines...) Expand all
295 </div> 305 </div>
296 </div> 306 </div>
297 </div> 307 </div>
298 </div> 308 </div>
299 </template> 309 </template>
300 310
301 </polymer-element><polymer-element name="isolate-summary" extends="observatory-e lement"> 311 </polymer-element><polymer-element name="isolate-summary" extends="observatory-e lement">
302 <template> 312 <template>
303 <div class="row"> 313 <div class="row">
304 <div class="col-md-1"> 314 <div class="col-md-1">
305 » » <img src="packages/observatory/src/observatory_elements/img/isol ate_icon.png" class="img-polaroid">» 315 <img src="img/isolate_icon.png" class="img-polaroid">
306 </div> 316 </div>
307 <div class="col-md-1">{{ isolate }}</div> 317 <div class="col-md-1">{{ isolate }}</div>
308 <div class="col-md-10">{{ name }}</div> 318 <div class="col-md-10">{{ name }}</div>
309 </div> 319 </div>
310 <div class="row"> 320 <div class="row">
311 <div class="col-md-2"></div> 321 <div class="col-md-2"></div>
312 <div class="col-md-1"> 322 <div class="col-md-1">
313 <a href="{{ app.locationManager.relativeLink(isolate, 'stacktrac e') }}">Stacktrace</a> 323 <a href="{{ app.locationManager.relativeLink(isolate, 'stacktrac e') }}">Stacktrace</a>
314 </div> 324 </div>
315 <div class="col-md-1"> 325 <div class="col-md-1">
316 <a href="{{ app.locationManager.relativeLink(isolate, 'library') }}">Lib rary</a> 326 <a href="{{ app.locationManager.relativeLink(isolate, 'library') }}">Lib rary</a>
317 </div> 327 </div>
318 <div class="col-md-1"> 328 <div class="col-md-1">
319 <a href="{{ app.locationManager.relativeLink(isolate, 'debug/breakpoints ') }}">Breakpoints</a> 329 <a href="{{ app.locationManager.relativeLink(isolate, 'debug/breakpoints ') }}">Breakpoints</a>
320 </div> 330 </div>
331 <div class="col-md-1">
332 <a href="{{ app.locationManager.relativeLink(isolate, 'profile') }}">Pro file</a>
333 </div>
321 <div class="col-md-8"></div> 334 <div class="col-md-8"></div>
322 </div> 335 </div>
323 </template> 336 </template>
324 337
325 </polymer-element><polymer-element name="isolate-list" extends="observatory-elem ent"> 338 </polymer-element>
339 <polymer-element name="isolate-list" extends="observatory-element">
326 <template> 340 <template>
327 <ul class="list-group"> 341 <ul class="list-group">
328 <template repeat="{{ isolate in app.isolateManager.isolates.values }}"> 342 <template repeat="{{ isolate in app.isolateManager.isolates.values }}">
329 <li class="list-group-item"> 343 <li class="list-group-item">
330 <isolate-summary app="{{ app }}" isolate="{{ isolate.id }}" name="{{ iso late.name }}"></isolate-summary> 344 <isolate-summary app="{{ app }}" isolate="{{ isolate.id }}" name="{{ iso late.name }}"></isolate-summary>
331 </li> 345 </li>
332 </template> 346 </template>
333 </ul> 347 </ul>
334 </template> 348 </template>
335 349
336 </polymer-element><polymer-element name="instance-view" extends="observatory-ele ment"> 350 </polymer-element><polymer-element name="instance-view" extends="observatory-ele ment">
337 <template> 351 <template>
338 <div class="row"> 352 <div class="row">
339 <div class="col-md-8 col-md-offset-2"> 353 <div class="col-md-8 col-md-offset-2">
340 <div class="panel panel-warning"> 354 <div class="panel panel-warning">
341 <div class="panel-heading"> 355 <div class="panel-heading">
342 Instance of 356 Instance of
343 <a href="{{ app.locationManager.currentIsolateClassLink(instance['class ']['id'])}}"> 357 <class-ref app="{{ app }}" ref="{{ instance['class'] }}"></class-ref>
344 {{ instance['class']['user_name'] }}
345 </a>
346 </div> 358 </div>
347 <div class="panel-body"> 359 <div class="panel-body">
348 <template if="{{ instance['error'] == null }}"> 360 <template if="{{ instance['error'] == null }}">
349 <table class="table table-hover"> 361 <table class="table table-hover">
350 <tbody> 362 <tbody>
351 <tr> 363 <tr>
352 <td>Preview</td><td>{{ instance['preview'] }}</td> 364 <td>Preview</td><td>{{ instance['preview'] }}</td>
353 </tr> 365 </tr>
354 </tbody> 366 </tbody>
355 </table> 367 </table>
356 <blockquote><strong>Fields</strong></blockquote> 368 <blockquote><strong>Fields</strong></blockquote>
357 <table class="table table-hover"> 369 <table class="table table-hover">
358 <tbody> 370 <tbody>
359 <tr template="" repeat="{{ field in instance['fields'] }}"> 371 <tr template="" repeat="{{ field in instance['fields'] }}">
360 <td><field-ref app="{{ app }}" field="{{ field }}"></field-ref ></td> 372 <td><field-ref app="{{ app }}" ref="{{ field }}"></field-ref>< /td>
361 <td><instance-ref app="{{ app }}" instance="{{ field['value'] }}"></instance-ref></td> 373 <td><instance-ref app="{{ app }}" ref="{{ field['value'] }}">< /instance-ref></td>
362 </tr> 374 </tr>
363 </tbody> 375 </tbody>
364 </table> 376 </table>
365 </template> 377 </template>
366 <template if="{{ instance['error'] != null }}"> 378 <template if="{{ instance['error'] != null }}">
367 <error-view error_obj="{{ instance['error'] }}"></error-view> 379 <error-view error_obj="{{ instance['error'] }}"></error-view>
368 </template> 380 </template>
369 </div> 381 </div>
370 </div> 382 </div>
371 </div> 383 </div>
372 </div> 384 </div>
373 </template> 385 </template>
374 386
375 </polymer-element><polymer-element name="json-view" extends="observatory-element "> 387 </polymer-element>
388 <polymer-element name="json-view" extends="observatory-element">
376 <template> 389 <template>
377 <template bind="" if="{{ valueType == 'Primitive' }}"> 390 <template bind="" if="{{ valueType == 'Primitive' }}">
378 <span>{{primitiveString}}</span> 391 <span>{{primitiveString}}</span>
379 </template> 392 </template>
380 <template bind="" if="{{ valueType == 'List' }}"> 393 <template bind="" if="{{ valueType == 'List' }}">
381 <table class="table table-condensed table-bordered"> 394 <table class="table table-condensed table-bordered">
382 <caption class="text-left">List, {{list.length}}</caption> 395 <caption class="text-left">List, {{list.length}}</caption>
383 <tbody> 396 <tbody>
384 <tr template="" repeat="{{item in list)}}"> 397 <tr template="" repeat="{{item in list)}}">
385 <th>{{counter}}</th> 398 <th>{{counter}}</th>
386 <td><json-view json="{{item}}"></json-view></td> 399 <td><json-view json="{{item}}"></json-view></td>
387 </tr> 400 </tr>
388 </tbody> 401 </tbody>
389 </table> 402 </table>
390 </template> 403 </template>
391 <template if="{{ valueType == 'Map' }}"> 404 <template if="{{ valueType == 'Map' }}">
392 <table class="table table-condensed table-bordered"> 405 <table class="table table-condensed table-bordered">
393 <caption class="text-left">Map, {{keys.length}}</caption> 406 <caption class="text-left">Map, {{keys.length}}</caption>
394 <tbody> 407 <tbody>
395 <tr template="" repeat="{{key in keys}}"> 408 <tr template="" repeat="{{key in keys}}">
396 <th>{{key}}</th> 409 <th>{{key}}</th>
397 <td><json-view json="{{value(key)}}"></json-view></td> 410 <td><json-view json="{{value(key)}}"></json-view></td>
398 </tr> 411 </tr>
399 </tbody> 412 </tbody>
400 </table> 413 </table>
401 </template> 414 </template>
402 </template> 415 </template>
403 416
417 </polymer-element>
418 <polymer-element name="script-ref" extends="service-ref">
419 <template>
420 <a href="{{ url }}">{{ name }}</a>
421 </template>
422
404 </polymer-element><polymer-element name="library-view" extends="observatory-elem ent"> 423 </polymer-element><polymer-element name="library-view" extends="observatory-elem ent">
405 <template> 424 <template>
406 <div class="alert alert-success">Library {{ library['name'] }}</div> 425 <div class="alert alert-success">Library {{ library['name'] }}</div>
407 <div class="alert alert-info">Scripts</div> 426 <div class="alert alert-info">Scripts</div>
408 <table class="table table-hover"> 427 <table class="table table-hover">
409 <tbody> 428 <tbody>
410 <tr template="" repeat="{{ script in library['scripts']}}"> 429 <tr template="" repeat="{{ script in library['scripts']}}">
411 <td> 430 <td>
412 {{ script['kind'] }} 431 {{ script['kind'] }}
413 </td> 432 </td>
414 <td> 433 <td>
415 <a href="{{ app.locationManager.currentIsolateScriptLink(script['id'], script['name']) }}">{{ script['name'] }}</a> 434 <script-ref app="{{ app }}" ref="{{ script }}"></script-ref>
416 </td> 435 </td>
417 </tr> 436 </tr>
418 </tbody> 437 </tbody>
419 </table> 438 </table>
420 <div class="alert alert-info">Imported Libraries</div> 439 <div class="alert alert-info">Imported Libraries</div>
421 <table class="table table-hover"> 440 <table class="table table-hover">
422 <tbody> 441 <tbody>
423 <tr template="" repeat="{{ lib in library['libraries'] }}"> 442 <tr template="" repeat="{{ lib in library['libraries'] }}">
424 <td> 443 <td>
425 <a href="{{ app.locationManager.currentIsolateObjectLink(lib['id'])}}" > 444 <library-ref app="{{ app }}" ref="{{ lib }}"></library-ref>
426 {{ lib['url'] }}
427 </a>
428 </td> 445 </td>
429 </tr> 446 </tr>
430 </tbody> 447 </tbody>
431 </table> 448 </table>
432 <div class="alert alert-info">Variables</div> 449 <div class="alert alert-info">Variables</div>
433 <table class="table table-hover"> 450 <table class="table table-hover">
434 <tbody> 451 <tbody>
435 <tr template="" repeat="{{ variable in library['variables'] }}"> 452 <tr template="" repeat="{{ variable in library['variables'] }}">
436 <td><field-ref app="{{ app }}" field="{{ variable }}"></field-ref></td> 453 <td><field-ref app="{{ app }}" ref="{{ variable }}"></field-ref></td>
437 <td><instance-ref app="{{ app }}" instance="{{ variable['value'] }}"></i nstance-ref></td> 454 <td><instance-ref app="{{ app }}" ref="{{ variable['value'] }}"></instan ce-ref></td>
438 </tr> 455 </tr>
439 </tbody> 456 </tbody>
440 </table> 457 </table>
441 <div class="alert alert-info">Functions</div> 458 <div class="alert alert-info">Functions</div>
442 <table class="table table-hover"> 459 <table class="table table-hover">
443 <tbody> 460 <tbody>
444 <tr template="" repeat="{{ func in library['functions'] }}"> 461 <tr template="" repeat="{{ func in library['functions'] }}">
445 <td> 462 <td>
446 <a href="{{ app.locationManager.currentIsolateObjectLink(func['id'])}} "> 463 <function-ref app="{{ app }}" ref="{{ func }}"></function-ref>
447 {{ func['user_name'] }}
448 </a>
449 </td> 464 </td>
450 </tr> 465 </tr>
451 </tbody> 466 </tbody>
452 </table> 467 </table>
453 <div class="alert alert-info">Classes</div> 468 <div class="alert alert-info">Classes</div>
454 <table class="table table-hover"> 469 <table class="table table-hover">
455 <thead> 470 <thead>
456 <tr> 471 <tr>
457 <th>Name</th> 472 <th>Name</th>
458 <th>Internal Name</th> 473 <th>Internal Name</th>
459 </tr> 474 </tr>
460 </thead> 475 </thead>
461 <tbody> 476 <tbody>
462 <tr template="" repeat="{{ cls in library['classes'] }}"> 477 <tr template="" repeat="{{ cls in library['classes'] }}">
463 <td> 478 <td>
464 <a href="{{ app.locationManager.currentIsolateClassLink(cls['id']) }}" > 479 <class-ref app="{{ app }}" ref="{{ cls }}"></class-ref>
465 {{ cls['user_name'] }}
466 </a>
467 </td> 480 </td>
468 <td> 481 <td>
469 <a href="{{ app.locationManager.currentIsolateClassLink(cls['id']) }}" > 482 <class-ref app="{{ app }}" ref="{{ cls }}" internal=""></class-ref>
470 {{ cls['name'] }}
471 </a>
472 </td> 483 </td>
473 </tr> 484 </tr>
474 </tbody> 485 </tbody>
475 </table> 486 </table>
476 487
477 </template> 488 </template>
478 489
479 </polymer-element><polymer-element name="source-view" extends="observatory-eleme nt"> 490 </polymer-element><polymer-element name="source-view" extends="observatory-eleme nt">
480 <template> 491 <template>
481 <div class="row"> 492 <div class="row">
(...skipping 17 matching lines...) Expand all
499 </template> 510 </template>
500 511
501 </polymer-element><polymer-element name="stack-trace" extends="observatory-eleme nt"> 512 </polymer-element><polymer-element name="stack-trace" extends="observatory-eleme nt">
502 <template> 513 <template>
503 <div class="alert alert-info">Stack Trace</div> 514 <div class="alert alert-info">Stack Trace</div>
504 <table class="table table-hover"> 515 <table class="table table-hover">
505 <thead> 516 <thead>
506 <tr> 517 <tr>
507 <th>Depth</th> 518 <th>Depth</th>
508 <th>Function</th> 519 <th>Function</th>
509 <th>Url</th> 520 <th>Script</th>
510 <th>Line</th> 521 <th>Line</th>
511 </tr> 522 </tr>
512 </thead> 523 </thead>
513 <tbody> 524 <tbody>
514 <tr template="" repeat="{{ frame in trace['members'] }}"> 525 <tr template="" repeat="{{ frame in trace['members'] }}">
515 <td>{{$index}}</td> 526 <td>{{$index}}</td>
516 <td><a href="{{app.locationManager.currentIsolateObjectLink(frame['funct ion']['id'])}}">{{ frame['name'] }}</a></td> 527 <td><function-ref app="{{ app }}" ref="{{ frame['function'] }}"></functi on-ref></td>
517 <td>{{ frame['url'] }}</td> 528 <td><script-ref app="{{ app }}" ref="{{ frame['script'] }}"></script-ref ></td>
518 <td>{{ frame['line'] }}</td> 529 <td>{{ frame['line'] }}</td>
519 </tr> 530 </tr>
520 </tbody> 531 </tbody>
521 </table> 532 </table>
522 </template> 533 </template>
523 534
524 </polymer-element><polymer-element name="message-viewer" extends="observatory-el ement"> 535 </polymer-element><polymer-element name="message-viewer" extends="observatory-el ement">
525 <!-- 536 <!--
526 This is a big switch statement which instantiates the custom element 537 This is a big switch statement which instantiates the custom element
527 designated to display the message type. 538 designated to display the message type.
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
581 <!-- Add new views and message types in the future here. --> 592 <!-- Add new views and message types in the future here. -->
582 </template> 593 </template>
583 594
584 </polymer-element><polymer-element name="navigation-bar" extends="observatory-el ement"> 595 </polymer-element><polymer-element name="navigation-bar" extends="observatory-el ement">
585 <template> 596 <template>
586 <nav class="navbar navbar-default" role="navigation"> 597 <nav class="navbar navbar-default" role="navigation">
587 <div class="navbar-header"> 598 <div class="navbar-header">
588 <a class="navbar-brand" href="">Observatory</a> 599 <a class="navbar-brand" href="">Observatory</a>
589 </div> 600 </div>
590 <div class="collapse navbar-collapse navbar-ex1-collapse"> 601 <div class="collapse navbar-collapse navbar-ex1-collapse">
591 <input class="span2 pull-right navbar-form" placeholder="VM Address" typ e="text" value="{{ app.requestManager.prefix }}">
592 </div> 602 </div>
593 </nav> 603 </nav>
594 </template> 604 </template>
595 605
596 </polymer-element><polymer-element name="response-viewer" extends="observatory-e lement"> 606 </polymer-element><polymer-element name="isolate-profile" extends="observatory-e lement">
607 <template>
608 <p> P R O F I L E </p>
609 <div>
610 <button type="button" on-click="{{refreshData}}">Refresh profile data</but ton>
611 <span>Top</span>
612 <select selectedindex="{{methodCountSelected}}" value="{{methodCounts[meth odCountSelected]}}">
613 <option template="" repeat="{{count in methodCounts}}">{{count}}</option >
614 </select>
615 <span>methods</span>
616 </div>
617 <blockquote><strong>Top Inclusive</strong></blockquote>
618 <table class="table table-hover">
619 <thead>
620 <tr>
621 <th>Ticks</th>
622 <th>Percent</th>
623 <th>Method</th>
624 </tr>
625 </thead>
626 <tbody>
627 <tr template="" repeat="{{ code in topInclusiveCodes }}">
628 <td>{{ codeTicks(code, true) }}</td>
629 <td>{{ codePercent(code, true) }}</td>
630 <td>{{ codeName(code) }}</td>
631 </tr>
632 </tbody></table>
633 <blockquote><strong>Top Exclusive</strong></blockquote>
634 <table class="table table-hover">
635 <thead>
636 <tr>
637 <th>Ticks</th>
638 <th>Percent</th>
639 <th>Method</th>
640 </tr>
641 </thead>
642 <tbody>
643 <tr template="" repeat="{{ code in topExclusiveCodes }}">
644 <td>{{ codeTicks(code, false) }}</td>
645 <td>{{ codePercent(code, false) }}</td>
646 <td>{{ codeName(code) }}</td>
647 </tr>
648 </tbody></table>
649 </template>
650
651 </polymer-element>
652 <polymer-element name="response-viewer" extends="observatory-element">
597 <template> 653 <template>
598 <template repeat="{{ message in app.requestManager.responses }}"> 654 <template repeat="{{ message in app.requestManager.responses }}">
599 <message-viewer app="{{ app }}" message="{{ message }}"></message-viewer> 655 <message-viewer app="{{ app }}" message="{{ message }}"></message-viewer>
600 <collapsible-content> 656 <collapsible-content>
601 <!-- <json-view json="{{ message }}"></json-view> --> 657 <!-- <json-view json="{{ message }}"></json-view> -->
602 </collapsible-content> 658 </collapsible-content>
603 </template> 659 </template>
604 </template> 660 </template>
605 661
606 </polymer-element><polymer-element name="observatory-application" extends="obser vatory-element"> 662 </polymer-element><polymer-element name="observatory-application" extends="obser vatory-element">
607 <template> 663 <template>
608 <navigation-bar app="{{ app }}"></navigation-bar> 664 <navigation-bar app="{{ app }}"></navigation-bar>
609 <response-viewer app="{{ app }}"></response-viewer> 665 <template if="{{ app.locationManager.profile }}">
666 <isolate-profile app="{{ app }}"></isolate-profile>
667 </template>
668 <template if="{{ app.locationManager.profile == false }}">
669 <response-viewer app="{{ app }}"></response-viewer>
670 </template>
610 </template> 671 </template>
611 672
612 </polymer-element> 673 </polymer-element>
613 <observatory-application></observatory-application> 674 <observatory-application></observatory-application>
614 675
615 </body></html> 676 </body></html>
OLDNEW
« no previous file with comments | « dart/runtime/bin/vmservice/client/build_.dart ('k') | dart/runtime/bin/vmservice/client/deployed/web/index_devtools.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698