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

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

Issue 24844002: Initial GUI for VM service (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 2 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
(Empty)
1 <!DOCTYPE html><html><head>
2 <title>Dart VM Observatory</title>
3 <meta charset="utf-8">
4
5 <link type="text/css" rel="stylesheet" href="bootstrap_css/css/bootstrap.min .css">
6
7 </head>
8 <body><script src="packages/shadow_dom/shadow_dom.debug.js"></script>
9 <script src="packages/browser/interop.js"></script>
10 <polymer-element name="observatory-element">
11
12 </polymer-element><polymer-element name="collapsible-content" extends="observato ry-element">
13 <template>
14 <div class="well row">
15 <a on-click="toggleDisplay" class="btn muted unselectable">
16 Raw message... <i class="{{ iconClass }}"></i>
17 </a>
18 <div style="display: {{ displayValue }}" class="well">
19 <content></content>
20 </div>
21 </div>
22 </template>
23
24 </polymer-element><polymer-element name="error-view" extends="observatory-elemen t">
25 <template>
26 <div class="alert alert-danger">Error!</div>
27 <div class="alert alert-info">
28 <p>Error message:</p>
29 <p>{{ error }}</p>
30 </div>
31 </template>
32
33 </polymer-element><polymer-element name="isolate-summary" extends="observatory-e lement">
34 <template>
35 <div class="row">
36 <div class="col-md-1">
37 <img src="packages/observatory/src/observatory_elements/img/isol ate_icon.png" class="img-polaroid">
38 </div>
39 <div class="col-md-1">{{ isolate }}</div>
40 <div class="col-md-10">{{ name }}</div>
41 </div>
42 <div class="row">
43 <div class="col-md-2"></div>
44 <div class="col-md-1">
45 <a href="{{ app.locationManager.relativeLink(isolate, 'stacktrac e') }}">Stacktrace</a>
46 </div>
47 <div class="col-md-9"></div>
48 </div>
49 </template>
50
51 </polymer-element><polymer-element name="isolate-list" extends="observatory-elem ent">
52 <template>
53 <ul class="list-group">
54 <template repeat="{{ isolate in app.isolateManager.isolates.values }}">
55 <li class="list-group-item">
56 <isolate-summary app="{{ app }}" isolate="{{ isolate.id }}" name="{{ iso late.name }}"></isolate-summary>
57 </li>
58 </template>
59 </ul>
60 </template>
61
62 </polymer-element><polymer-element name="json-view" extends="observatory-element ">
63 <template>
64 <template bind="" if="{{ valueType == 'Primitive' }}">
65 <span>{{primitiveString}}</span>
66 </template>
67 <template bind="" if="{{ valueType == 'List' }}">
68 <table class="table table-condensed table-bordered">
69 <caption class="text-left">List, {{list.length}}</caption>
70 <tbody>
71 <tr template="" repeat="{{item in list)}}">
72 <th>{{counter}}</th>
73 <td><json-view json="{{item}}"></json-view></td>
74 </tr>
75 </tbody>
76 </table>
77 </template>
78 <template if="{{ valueType == 'Map' }}">
79 <table class="table table-condensed table-bordered">
80 <caption class="text-left">Map, {{keys.length}}</caption>
81 <tbody>
82 <tr template="" repeat="{{key in keys}}">
83 <th>{{key}}</th>
84 <td><json-view json="{{value(key)}}"></json-view></td>
85 </tr>
86 </tbody>
87 </table>
88 </template>
89 </template>
90
91 </polymer-element><polymer-element name="stack-trace" extends="observatory-eleme nt">
92 <template>
93 <div class="alert alert-info">Stack Trace</div>
94 <table class="table table-hover">
95 <thead>
96 <tr>
97 <th>Depth</th>
98 <th>Function</th>
99 <th>Url</th>
100 <th>Line</th>
101 </tr>
102 </thead>
103 <tbody>
104 <tr template="" repeat="{{ frame in trace['members'] }}">
105 <td>{{$index}}</td>
106 <td>{{ frame['name'] }}</td>
107 <td>{{ frame['url'] }}</td>
108 <td>{{ frame['line'] }}</td>
109 </tr>
110 </tbody>
111 </table>
112 </template>
113
114 </polymer-element><polymer-element name="message-viewer" extends="observatory-el ement">
115 <!--
116 This is a big switch statement which instantiates the custom element
117 designated to display the message type.
118 -->
119 <template>
120 <!-- If the message type is an IsolateList -->
121 <template if="{{ messageType == 'IsolateList' }}">
122 <isolate-list app="{{ app }}"></isolate-list>
123 </template>
124 <!-- If the message type is a StackTrace -->
125 <template if="{{ messageType == 'StackTrace' }}">
126 <stack-trace app="{{ app }}" trace="{{ message }}"></stack-trace>
127 </template>
128 <!-- If the message type is a RequestError -->
129 <template if="{{ messageType == 'RequestError' }}">
130 <error-view app="{{ app }}" error="{{ message['error'] }}"></error-view>
131 </template>
132 <!-- Add new views and message types in the future here. -->
133 </template>
134
135 </polymer-element><polymer-element name="navigation-bar" extends="observatory-el ement">
136 <template>
137 <nav class="navbar navbar-default" role="navigation">
138 <div class="navbar-header">
139 <a class="navbar-brand" href="">Observatory</a>
140 </div>
141 <div class="collapse navbar-collapse navbar-ex1-collapse">
142 <input class="span2 pull-right navbar-form" placeholder="VM Address" typ e="text" value="{{ app.requestManager.prefix }}">
143 </div>
144 </nav>
145 </template>
146
147 </polymer-element><polymer-element name="response-viewer" extends="observatory-e lement">
148 <template>
149 <template repeat="{{ message in app.requestManager.responses }}">
150 <message-viewer app="{{ app }}" message="{{ message }}"></message-viewer>
151 <collapsible-content>
152 <json-view json="{{ message }}"></json-view>
153 </collapsible-content>
154 </template>
155 </template>
156
157 </polymer-element><polymer-element name="observatory-application" extends="obser vatory-element">
158 <template>
159 <navigation-bar app="{{ app }}"></navigation-bar>
160 <response-viewer app="{{ app }}"></response-viewer>
161 </template>
162
163 </polymer-element>
164 <observatory-application></observatory-application>
165
166
167
168 <script type="application/dart" src="index.html_bootstrap.dart"></script><script src="packages/browser/dart.js"></script></body></html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698