| Index: runtime/bin/vmservice/client/deployed/web/index.html
|
| diff --git a/runtime/bin/vmservice/client/deployed/web/index.html b/runtime/bin/vmservice/client/deployed/web/index.html
|
| index 5a88805e9f69c37eff17eed52ee35a939ed909e0..769493434c5f4d72f9ffa25ee73ef01089234bbd 100644
|
| --- a/runtime/bin/vmservice/client/deployed/web/index.html
|
| +++ b/runtime/bin/vmservice/client/deployed/web/index.html
|
| @@ -38,6 +38,7 @@
|
| <content></content>
|
| </ul>
|
| </nav>
|
| + <br>
|
| </template>
|
| </polymer-element>
|
|
|
| @@ -174,7 +175,7 @@
|
| <nav-menu link="{{ isolate.hashLink }}" anchor="{{ isolate.name }}" last="{{ last }}">
|
| <nav-menu-item link="{{ isolate.relativeHashLink('stacktrace') }}" anchor="stack trace"></nav-menu-item>
|
| <nav-menu-item link="{{ isolate.relativeHashLink('profile') }}" anchor="cpu profile"></nav-menu-item>
|
| - <nav-menu-item link="{{ isolate.relativeHashLink('allocationprofile') }}" anchor="heap profile"></nav-menu-item>
|
| + <nav-menu-item link="{{ isolate.relativeHashLink('allocationprofile') }}" anchor="allocation profile"></nav-menu-item>
|
| <nav-menu-item link="{{ isolate.relativeHashLink('heapmap') }}" anchor="heap map"></nav-menu-item>
|
| <nav-menu-item link="{{ isolate.relativeHashLink('debug/breakpoints') }}" anchor="breakpoints"></nav-menu-item>
|
| <content></content>
|
| @@ -276,13 +277,24 @@
|
| <polymer-element name="instance-ref" extends="service-ref">
|
| <template>
|
| <link rel="stylesheet" href="packages/observatory/src/elements/css/shared.css">
|
| + <style>
|
| + .errorBox {
|
| + background-color: #f5f5f5;
|
| + border: 1px solid #ccc;
|
| + padding: 10px;
|
| + font-family: consolas, courier, monospace;
|
| + font-size: 1em;
|
| + line-height: 1.2em;
|
| + white-space: pre;
|
| + }
|
| + </style>
|
| <span>
|
| - <template if="{{ isUnexpected(ref.serviceType) }}">
|
| - unexpected reference type <{{ ref.serviceType }}>
|
| + <template if="{{ isError(ref.serviceType) }}">
|
| + <pre class="errorBox">{{ ref.message }}</pre>
|
| </template>
|
|
|
| - <template if="{{ isError(ref.serviceType) }}">
|
| - <pre>{{ ref.message }}</pre>
|
| + <template if="{{ isUnexpected(ref.serviceType) }}">
|
| + unexpected reference type <{{ ref.serviceType }}>
|
| </template>
|
|
|
| <template if="{{ isNull(ref.serviceType) }}">
|
| @@ -378,7 +390,7 @@
|
| white-space: pre-line;
|
| }
|
| .historyExpr a:hover {
|
| - background-color: #e1f5fe
|
| + background-color: #fff3e3;
|
| }
|
| .historyValue {
|
| display: block;
|
| @@ -459,10 +471,16 @@
|
| </polymer-element>
|
| <polymer-element name="library-ref" extends="service-ref">
|
| <template><link rel="stylesheet" href="packages/observatory/src/elements/css/shared.css">
|
| - <a href="{{ url }}">{{ name }}</a>
|
| + <template if="{{ nameIsEmpty }}">
|
| + <a href="{{ url }}">unnamed</a>
|
| + </template>
|
| + <template if="{{ !nameIsEmpty }}">
|
| + <a href="{{ url }}">{{ name }}</a>
|
| + </template>
|
| </template>
|
|
|
| -</polymer-element><polymer-element name="script-ref" extends="service-ref">
|
| +</polymer-element>
|
| +<polymer-element name="script-ref" extends="service-ref">
|
| <template>
|
| <link rel="stylesheet" href="packages/observatory/src/elements/css/shared.css">
|
| <a title="{{ hoverText }}" href="{{ url }}">{{ name }}</a>
|
| @@ -1242,82 +1260,101 @@
|
|
|
| <br>
|
|
|
| - <div class="content">
|
| - <div class="memberList">
|
| - <div class="memberItem">
|
| - <div class="memberName">root library</div>
|
| - <div class="memberValue">
|
| - <function-ref ref="{{ isolate.rootLib }}"></function-ref>
|
| + <div class="content-centered">
|
| + <div class="flex-row">
|
| +
|
| + <div class="flex-item-fixed-6-12">
|
| + <div class="memberList">
|
| + <div class="memberItem">
|
| + <div class="memberName">root library</div>
|
| + <div class="memberValue">
|
| + <library-ref ref="{{ isolate.rootLib }}"></library-ref>
|
| + </div>
|
| + </div>
|
| + <div class="memberItem">
|
| + <template if="{{ isolate.entry != null }}">
|
| + <div class="memberName">entry</div>
|
| + <div class="memberValue">
|
| + <function-ref ref="{{ isolate.entry }}"></function-ref>
|
| + </div>
|
| + </template>
|
| + </div>
|
| + <div class="memberItem">
|
| + <div class="memberName">id</div>
|
| + <div class="memberValue">{{ isolate.mainPort }}</div>
|
| + </div>
|
| + <br>
|
| + <div class="memberItem">
|
| + <div class="memberValue">
|
| + See <a href="{{ isolate.relativeHashLink('stacktrace') }}">stack trace</a>
|
| + </div>
|
| + </div>
|
| + <div class="memberItem">
|
| + <div class="memberValue">
|
| + See <a href="{{ isolate.relativeHashLink('profile') }}">cpu profile</a>
|
| + </div>
|
| + </div>
|
| + <div class="memberItem">
|
| + <div class="memberValue">
|
| + See <a href="{{ isolate.relativeHashLink('debug/breakpoints') }}">breakpoints</a>
|
| +
|
| + </div>
|
| + </div>
|
| </div>
|
| </div>
|
| - <div class="memberItem">
|
| - <template if="{{ isolate.entry != null }}">
|
| - <div class="memberName">entry</div>
|
| - <div class="memberValue">
|
| - <function-ref ref="{{ isolate.entry }}"></function-ref>
|
| +
|
| + <div class="flex-item-fixed-6-12">
|
| + <div class="memberList">
|
| + <div class="memberItem">
|
| + <div class="memberName">new heap</div>
|
| + <div class="memberValue">
|
| + {{ isolate.newHeapUsed | formatSize }}
|
| + of
|
| + {{ isolate.newHeapCapacity | formatSize }}
|
| + </div>
|
| + </div>
|
| + <div class="memberItem">
|
| + <div class="memberName">old heap</div>
|
| + <div class="memberValue">
|
| + {{ isolate.oldHeapUsed | formatSize }}
|
| + of
|
| + {{ isolate.oldHeapCapacity | formatSize }}
|
| + </div>
|
| </div>
|
| - </template>
|
| - </div>
|
| - <div class="memberItem">
|
| - <div class="memberName">id</div>
|
| - <div class="memberValue">{{ isolate.mainPort }}</div>
|
| - </div>
|
| - <br>
|
| - <div class="memberItem">
|
| - <div class="memberValue">
|
| - See <a href="{{ isolate.relativeHashLink('stacktrace') }}">stack trace</a>
|
| </div>
|
| - </div>
|
| - <div class="memberItem">
|
| - <div class="memberValue">
|
| - See <a href="{{ isolate.relativeHashLink('profile') }}">cpu profile</a>
|
| + <br>
|
| + <div class="memberList">
|
| + <div class="memberItem">
|
| + <div class="memberValue">
|
| + See <a href="{{ isolate.relativeHashLink('allocationprofile') }}">allocation profile</a>
|
| + </div>
|
| + </div>
|
| + <div class="memberItem">
|
| + <div class="memberValue">
|
| + See <a href="{{ isolate.relativeHashLink('heapmap') }}">heap map</a>
|
| + </div>
|
| + </div>
|
| </div>
|
| </div>
|
| - <div class="memberItem">
|
| - <div class="memberValue">
|
| - See <a href="{{ isolate.relativeHashLink('debug/breakpoints') }}">breakpoints</a>
|
|
|
| - </div>
|
| - </div>
|
| - </div>
|
| - </div>
|
| + </div> <!-- flex row -->
|
| + </div> <!-- content -->
|
|
|
| <hr>
|
|
|
| <div class="content">
|
| - <div class="memberList">
|
| - <div class="memberItem">
|
| - <div class="memberName">new heap</div>
|
| - <div class="memberValue">
|
| - {{ isolate.newHeapUsed | formatSize }}
|
| - of
|
| - {{ isolate.newHeapCapacity | formatSize }}
|
| - </div>
|
| - </div>
|
| - <div class="memberItem">
|
| - <div class="memberName">old heap</div>
|
| - <div class="memberValue">
|
| - {{ isolate.oldHeapUsed | formatSize }}
|
| - of
|
| - {{ isolate.oldHeapCapacity | formatSize }}
|
| - </div>
|
| - </div>
|
| - </div>
|
| -
|
| - <br>
|
| -
|
| - <div class="memberList">
|
| - <div class="memberItem">
|
| - <div class="memberValue">
|
| - See <a href="{{ isolate.relativeHashLink('allocationprofile') }}">allocation profile</a>
|
| - </div>
|
| - </div>
|
| - <div class="memberItem">
|
| - <div class="memberValue">
|
| - See <a href="{{ isolate.relativeHashLink('heapmap') }}">heap map</a>
|
| - </div>
|
| + libraries ({{ isolate.libraries.length }})
|
| + <curly-block>
|
| + <div class="memberList">
|
| + <template repeat="{{ lib in isolate.libraries }}">
|
| + <div class="memberItem">
|
| + <div class="memberName">
|
| + <library-ref ref="{{ lib }}"></library-ref>
|
| + </div>
|
| + </div>
|
| + </template>
|
| </div>
|
| - </div>
|
| + </curly-block>
|
| </div>
|
|
|
| <hr>
|
| @@ -1990,7 +2027,6 @@
|
| <top-nav-menu></top-nav-menu>
|
| <isolate-nav-menu isolate="{{ script.isolate }}">
|
| </isolate-nav-menu>
|
| - <library-nav-menu library="{{ script.library }}"></library-nav-menu>
|
| <nav-menu link="." anchor="{{ script.name }}" last="{{ true }}">
|
| <li>
|
| <input type="checkbox" checked="{{ showCoverage }}">
|
|
|