| OLD | NEW |
| 1 <head> | 1 <head> |
| 2 <link rel="import" href="class_ref.html"> | 2 <link rel="import" href="class_ref.html"> |
| 3 <link rel="import" href="error_view.html"> | 3 <link rel="import" href="error_view.html"> |
| 4 <link rel="import" href="eval_box.html"> | 4 <link rel="import" href="eval_box.html"> |
| 5 <link rel="import" href="field_ref.html"> | 5 <link rel="import" href="field_ref.html"> |
| 6 <link rel="import" href="instance_ref.html"> | 6 <link rel="import" href="instance_ref.html"> |
| 7 <link rel="import" href="observatory_element.html"> | 7 <link rel="import" href="observatory_element.html"> |
| 8 <link rel="import" href="nav_bar.html"> | 8 <link rel="import" href="nav_bar.html"> |
| 9 </head> | 9 </head> |
| 10 <polymer-element name="instance-view" extends="observatory-element"> | 10 <polymer-element name="instance-view" extends="observatory-element"> |
| 11 <template> | 11 <template> |
| 12 <nav-bar> | 12 <nav-bar> |
| 13 <top-nav-menu></top-nav-menu> | 13 <top-nav-menu></top-nav-menu> |
| 14 <isolate-nav-menu isolate="{{ instance.isolate }}"></isolate-nav-menu> | 14 <isolate-nav-menu isolate="{{ instance.isolate }}"></isolate-nav-menu> |
| 15 <!-- TODO(turnidge): Add library nav menu here. --> | 15 <!-- TODO(turnidge): Add library nav menu here. --> |
| 16 <class-nav-menu cls="{{ instance['class'] }}"></class-nav-menu> | 16 <class-nav-menu cls="{{ instance['class'] }}"></class-nav-menu> |
| 17 <nav-menu link="." anchor="instance" last="{{ true }}"></nav-menu> | 17 <nav-menu link="." anchor="instance" last="{{ true }}"></nav-menu> |
| 18 <nav-refresh callback="{{ refresh }}"></nav-refresh> | 18 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 19 </nav-bar> | 19 </nav-bar> |
| 20 | 20 |
| 21 <style> | 21 <style> |
| 22 .content { | 22 .content { |
| 23 padding-left: 10%; | 23 padding-left: 10%; |
| 24 font: 400 14px 'Montserrat', sans-serif; | 24 font: 400 14px 'Montserrat', sans-serif; |
| 25 } | 25 } |
| 26 h1 { | 26 h1 { |
| 27 font: 400 18px 'Montserrat', sans-serif; | 27 font: 400 18px 'Montserrat', sans-serif; |
| 28 } | 28 } |
| 29 .member { | 29 .memberList { |
| 30 display: table; |
| 31 } |
| 32 .memberItem { |
| 33 display: table-row; |
| 34 } |
| 35 .memberName, .memberValue { |
| 36 display: table-cell; |
| 30 vertical-align: top; | 37 vertical-align: top; |
| 31 padding: 3px 0 3px 1em; | 38 padding: 3px 0 3px 1em; |
| 32 font: 400 14px 'Montserrat', sans-serif; | 39 font: 400 14px 'Montserrat', sans-serif; |
| 33 } | |
| 34 .memberBold { | |
| 35 vertical-align: top; | |
| 36 padding: 3px 0 3px 1em; | |
| 37 font: 400 14px 'Montserrat', sans-serif; | |
| 38 } | 40 } |
| 39 </style> | 41 </style> |
| 40 | 42 |
| 41 <template if="{{ instance['error'] != null }}"> | 43 <template if="{{ instance['error'] != null }}"> |
| 42 <error-view error_obj="{{ instance['error'] }}"></error-view> | 44 <error-view error_obj="{{ instance['error'] }}"></error-view> |
| 43 </template> | 45 </template> |
| 44 | 46 |
| 45 <template if="{{ instance['error'] == null }}"> | 47 <template if="{{ instance['error'] == null }}"> |
| 46 <div class="content"> | 48 <div class="content"> |
| 47 <!-- TODO(turnidge): Handle null instances. --> | 49 <!-- TODO(turnidge): Handle null instances. --> |
| 48 <h1>instance of {{ instance['class']['user_name'] }}</h1> | 50 <h1>instance of {{ instance['class']['user_name'] }}</h1> |
| 49 <table> | 51 <div class="memberList"> |
| 50 <tr> | 52 <div class="memberItem"> |
| 51 <td class="memberBold">class</td> | 53 <div class="memberName">class</div> |
| 52 <td class="member"> | 54 <div class="memberValue"> |
| 53 <class-ref ref="{{ instance['class'] }}"> | 55 <class-ref ref="{{ instance['class'] }}"> |
| 54 </class-ref> | 56 </class-ref> |
| 55 </td> | 57 </div> |
| 56 </tr> | 58 </div> |
| 57 <tr template if="{{ instance['preview'] != null }}"> | 59 <template if="{{ instance['preview'] != null }}"> |
| 58 <td class="memberBold">preview</td> | 60 <div class="memberItem"> |
| 59 <td class="member">{{ instance['preview'] }}</td> | 61 <div class="memberName">preview</div> |
| 60 </tr> | 62 <div class="memberValue">{{ instance['preview'] }}</div> |
| 61 <tr> | 63 </div> |
| 62 <td class="memberBold">size</td> | 64 </template> |
| 63 <td class="member">{{ instance['size'] | formatSize }}</td> | 65 <div class="memberItem"> |
| 64 </tr> | 66 <div class="memberName">size</div> |
| 65 </table> | 67 <div class="memberValue">{{ instance['size'] | formatSize }}</div> |
| 68 </div> |
| 69 </div> |
| 66 </div> | 70 </div> |
| 67 | 71 |
| 68 <hr> | 72 <hr> |
| 69 | 73 |
| 70 <div class="content"> | 74 <div class="content"> |
| 71 <template if="{{ instance['fields'].isNotEmpty }}"> | 75 <template if="{{ instance['fields'].isNotEmpty }}"> |
| 72 fields ({{ instance['fields'].length }}) | 76 fields ({{ instance['fields'].length }}) |
| 73 <curly-block> | 77 <curly-block> |
| 74 <table> | 78 <div class="memberList"> |
| 75 <tr template repeat="{{ field in instance['fields'] }}"> | 79 <template repeat="{{ field in instance['fields'] }}"> |
| 76 <td class="member"> | 80 <div class="memberItem"> |
| 77 <field-ref ref="{{ field['decl'] }}"></field-ref> | 81 <div class="memberName"> |
| 78 </td> | 82 <field-ref ref="{{ field['decl'] }}"></field-ref> |
| 79 <td class="member"> | 83 </div> |
| 80 <instance-ref ref="{{ field['value'] }}"></instance-ref> | 84 <div class="memberValue"> |
| 81 </td> | 85 <instance-ref ref="{{ field['value'] }}"></instance-ref> |
| 82 </tr> | 86 </div> |
| 83 </table> | 87 </div> |
| 88 </template> |
| 89 </div> |
| 84 </curly-block> | 90 </curly-block> |
| 85 </template> | 91 </template> |
| 86 | 92 |
| 87 <template if="{{ instance['nativeFields'].isNotEmpty }}"> | 93 <template if="{{ instance['nativeFields'].isNotEmpty }}"> |
| 88 native fields ({{ instance['nativeFields'].length }}) | 94 native fields ({{ instance['nativeFields'].length }}) |
| 89 <curly-block> | 95 <curly-block> |
| 90 <table> | 96 <div class="memberList"> |
| 91 <tr template repeat="{{ field in instance['nativeFields'] }}"> | 97 <template repeat="{{ field in instance['nativeFields'] }}"> |
| 92 <td class="member">[{{ field['index']}}]</td> | 98 <div class="memberItem"> |
| 93 <td class="member">[{{ field['value']}}]</td> | 99 <div class="memberName">[{{ field['index']}}]</div> |
| 94 </tr> | 100 <div class="memberValue">[{{ field['value']}}]</div> |
| 95 </table> | 101 </div> |
| 96 </curly-block> | 102 </template> |
| 103 </div> |
| 104 </curly-block><br> |
| 97 </template> | 105 </template> |
| 98 | 106 |
| 99 <template if="{{ instance['elements'].isNotEmpty }}"> | 107 <template if="{{ instance['elements'].isNotEmpty }}"> |
| 100 elements ({{ instance['elements'].length }}) | 108 elements ({{ instance['elements'].length }}) |
| 101 <curly-block> | 109 <curly-block> |
| 102 <table> | 110 <div class="memberList"> |
| 103 <tr template repeat="{{ element in instance['elements'] }}"> | 111 <template repeat="{{ element in instance['elements'] }}"> |
| 104 <td class="member">[{{ element['index']}}]</td> | 112 <div class="memberItem"> |
| 105 <td class="member"> | 113 <div class="memberName">[{{ element['index']}}]</div> |
| 106 <instance-ref ref="{{ element['value'] }}"> | 114 <div class="memberValue"> |
| 107 </instance-ref> | 115 <instance-ref ref="{{ element['value'] }}"> |
| 108 </td> | 116 </instance-ref> |
| 109 </tr> | 117 </div> |
| 110 </table> | 118 </div> |
| 111 </curly-block> | 119 </template> |
| 120 </div> |
| 121 </curly-block><br> |
| 112 </template> | 122 </template> |
| 113 </div> | 123 </div> |
| 114 | 124 |
| 115 <hr> | 125 <hr> |
| 116 | 126 |
| 117 <div class="content"> | 127 <div class="content"> |
| 118 <eval-box callback="{{ eval }}"></eval-box> | 128 <eval-box callback="{{ eval }}"></eval-box> |
| 119 </div> | 129 </div> |
| 120 <br><br><br><br> | 130 <br><br><br><br> |
| 121 <br><br><br><br> | 131 <br><br><br><br> |
| 122 </template> | 132 </template> |
| 123 </template> | 133 </template> |
| 124 <script type="application/dart" src="instance_view.dart"></script> | 134 <script type="application/dart" src="instance_view.dart"></script> |
| 125 </polymer-element> | 135 </polymer-element> |
| OLD | NEW |