| OLD | NEW |
| 1 <!DOCTYPE html><html><head> | 1 <!DOCTYPE html><html><head> |
| 2 <meta charset="utf-8"> | 2 <meta charset="utf-8"> |
| 3 <title>Dart VM Observatory</title> | 3 <title>Dart VM Observatory</title> |
| 4 | 4 |
| 5 | 5 |
| 6 | 6 |
| 7 | 7 |
| 8 | 8 |
| 9 | 9 |
| 10 </head> | 10 </head> |
| (...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 114 color: #0489c3; | 114 color: #0489c3; |
| 115 text-decoration: none; | 115 text-decoration: none; |
| 116 } | 116 } |
| 117 | 117 |
| 118 a:hover { | 118 a:hover { |
| 119 text-decoration: underline; | 119 text-decoration: underline; |
| 120 } | 120 } |
| 121 | 121 |
| 122 em { | 122 em { |
| 123 color: inherit; | 123 color: inherit; |
| 124 font-style:italic; | 124 font-style: italic; |
| 125 } |
| 126 |
| 127 b { |
| 128 color: inherit; |
| 129 font-weight: bold; |
| 125 } | 130 } |
| 126 | 131 |
| 127 hr { | 132 hr { |
| 128 margin-top: 20px; | 133 margin-top: 20px; |
| 129 margin-bottom: 20px; | 134 margin-bottom: 20px; |
| 130 border: 0; | 135 border: 0; |
| 131 border-top: 1px solid #eee; | 136 border-top: 1px solid #eee; |
| 132 height: 0; | 137 height: 0; |
| 133 box-sizing: content-box; | 138 box-sizing: content-box; |
| 134 } | 139 } |
| (...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 327 | 332 |
| 328 | 333 |
| 329 | 334 |
| 330 | 335 |
| 331 | 336 |
| 332 | 337 |
| 333 | 338 |
| 334 | 339 |
| 335 | 340 |
| 336 | 341 |
| 342 |
| 337 | 343 |
| 338 | 344 |
| 339 | 345 |
| 340 | 346 |
| 341 | 347 |
| 342 | 348 |
| 343 <polymer-element name="curly-block"> | 349 <polymer-element name="curly-block"> |
| 344 <template> | 350 <template> |
| 345 <style> | 351 <style> |
| 346 .idle { | 352 .idle { |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 440 color: #0489c3; | 446 color: #0489c3; |
| 441 text-decoration: none; | 447 text-decoration: none; |
| 442 } | 448 } |
| 443 | 449 |
| 444 a:hover { | 450 a:hover { |
| 445 text-decoration: underline; | 451 text-decoration: underline; |
| 446 } | 452 } |
| 447 | 453 |
| 448 em { | 454 em { |
| 449 color: inherit; | 455 color: inherit; |
| 450 font-style:italic; | 456 font-style: italic; |
| 457 } |
| 458 |
| 459 b { |
| 460 color: inherit; |
| 461 font-weight: bold; |
| 451 } | 462 } |
| 452 | 463 |
| 453 hr { | 464 hr { |
| 454 margin-top: 20px; | 465 margin-top: 20px; |
| 455 margin-bottom: 20px; | 466 margin-bottom: 20px; |
| 456 border: 0; | 467 border: 0; |
| 457 border-top: 1px solid #eee; | 468 border-top: 1px solid #eee; |
| 458 height: 0; | 469 height: 0; |
| 459 box-sizing: content-box; | 470 box-sizing: content-box; |
| 460 } | 471 } |
| (...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 782 color: #0489c3; | 793 color: #0489c3; |
| 783 text-decoration: none; | 794 text-decoration: none; |
| 784 } | 795 } |
| 785 | 796 |
| 786 a:hover { | 797 a:hover { |
| 787 text-decoration: underline; | 798 text-decoration: underline; |
| 788 } | 799 } |
| 789 | 800 |
| 790 em { | 801 em { |
| 791 color: inherit; | 802 color: inherit; |
| 792 font-style:italic; | 803 font-style: italic; |
| 804 } |
| 805 |
| 806 b { |
| 807 color: inherit; |
| 808 font-weight: bold; |
| 793 } | 809 } |
| 794 | 810 |
| 795 hr { | 811 hr { |
| 796 margin-top: 20px; | 812 margin-top: 20px; |
| 797 margin-bottom: 20px; | 813 margin-bottom: 20px; |
| 798 border: 0; | 814 border: 0; |
| 799 border-top: 1px solid #eee; | 815 border-top: 1px solid #eee; |
| 800 height: 0; | 816 height: 0; |
| 801 box-sizing: content-box; | 817 box-sizing: content-box; |
| 802 } | 818 } |
| (...skipping 410 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1213 color: #0489c3; | 1229 color: #0489c3; |
| 1214 text-decoration: none; | 1230 text-decoration: none; |
| 1215 } | 1231 } |
| 1216 | 1232 |
| 1217 a:hover { | 1233 a:hover { |
| 1218 text-decoration: underline; | 1234 text-decoration: underline; |
| 1219 } | 1235 } |
| 1220 | 1236 |
| 1221 em { | 1237 em { |
| 1222 color: inherit; | 1238 color: inherit; |
| 1223 font-style:italic; | 1239 font-style: italic; |
| 1240 } |
| 1241 |
| 1242 b { |
| 1243 color: inherit; |
| 1244 font-weight: bold; |
| 1224 } | 1245 } |
| 1225 | 1246 |
| 1226 hr { | 1247 hr { |
| 1227 margin-top: 20px; | 1248 margin-top: 20px; |
| 1228 margin-bottom: 20px; | 1249 margin-bottom: 20px; |
| 1229 border: 0; | 1250 border: 0; |
| 1230 border-top: 1px solid #eee; | 1251 border-top: 1px solid #eee; |
| 1231 height: 0; | 1252 height: 0; |
| 1232 box-sizing: content-box; | 1253 box-sizing: content-box; |
| 1233 } | 1254 } |
| (...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1471 color: #0489c3; | 1492 color: #0489c3; |
| 1472 text-decoration: none; | 1493 text-decoration: none; |
| 1473 } | 1494 } |
| 1474 | 1495 |
| 1475 a:hover { | 1496 a:hover { |
| 1476 text-decoration: underline; | 1497 text-decoration: underline; |
| 1477 } | 1498 } |
| 1478 | 1499 |
| 1479 em { | 1500 em { |
| 1480 color: inherit; | 1501 color: inherit; |
| 1481 font-style:italic; | 1502 font-style: italic; |
| 1503 } |
| 1504 |
| 1505 b { |
| 1506 color: inherit; |
| 1507 font-weight: bold; |
| 1482 } | 1508 } |
| 1483 | 1509 |
| 1484 hr { | 1510 hr { |
| 1485 margin-top: 20px; | 1511 margin-top: 20px; |
| 1486 margin-bottom: 20px; | 1512 margin-bottom: 20px; |
| 1487 border: 0; | 1513 border: 0; |
| 1488 border-top: 1px solid #eee; | 1514 border-top: 1px solid #eee; |
| 1489 height: 0; | 1515 height: 0; |
| 1490 box-sizing: content-box; | 1516 box-sizing: content-box; |
| 1491 } | 1517 } |
| (...skipping 341 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1833 color: #0489c3; | 1859 color: #0489c3; |
| 1834 text-decoration: none; | 1860 text-decoration: none; |
| 1835 } | 1861 } |
| 1836 | 1862 |
| 1837 a:hover { | 1863 a:hover { |
| 1838 text-decoration: underline; | 1864 text-decoration: underline; |
| 1839 } | 1865 } |
| 1840 | 1866 |
| 1841 em { | 1867 em { |
| 1842 color: inherit; | 1868 color: inherit; |
| 1843 font-style:italic; | 1869 font-style: italic; |
| 1870 } |
| 1871 |
| 1872 b { |
| 1873 color: inherit; |
| 1874 font-weight: bold; |
| 1844 } | 1875 } |
| 1845 | 1876 |
| 1846 hr { | 1877 hr { |
| 1847 margin-top: 20px; | 1878 margin-top: 20px; |
| 1848 margin-bottom: 20px; | 1879 margin-bottom: 20px; |
| 1849 border: 0; | 1880 border: 0; |
| 1850 border-top: 1px solid #eee; | 1881 border-top: 1px solid #eee; |
| 1851 height: 0; | 1882 height: 0; |
| 1852 box-sizing: content-box; | 1883 box-sizing: content-box; |
| 1853 } | 1884 } |
| (...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2084 color: #0489c3; | 2115 color: #0489c3; |
| 2085 text-decoration: none; | 2116 text-decoration: none; |
| 2086 } | 2117 } |
| 2087 | 2118 |
| 2088 a:hover { | 2119 a:hover { |
| 2089 text-decoration: underline; | 2120 text-decoration: underline; |
| 2090 } | 2121 } |
| 2091 | 2122 |
| 2092 em { | 2123 em { |
| 2093 color: inherit; | 2124 color: inherit; |
| 2094 font-style:italic; | 2125 font-style: italic; |
| 2126 } |
| 2127 |
| 2128 b { |
| 2129 color: inherit; |
| 2130 font-weight: bold; |
| 2095 } | 2131 } |
| 2096 | 2132 |
| 2097 hr { | 2133 hr { |
| 2098 margin-top: 20px; | 2134 margin-top: 20px; |
| 2099 margin-bottom: 20px; | 2135 margin-bottom: 20px; |
| 2100 border: 0; | 2136 border: 0; |
| 2101 border-top: 1px solid #eee; | 2137 border-top: 1px solid #eee; |
| 2102 height: 0; | 2138 height: 0; |
| 2103 box-sizing: content-box; | 2139 box-sizing: content-box; |
| 2104 } | 2140 } |
| (...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2328 color: #0489c3; | 2364 color: #0489c3; |
| 2329 text-decoration: none; | 2365 text-decoration: none; |
| 2330 } | 2366 } |
| 2331 | 2367 |
| 2332 a:hover { | 2368 a:hover { |
| 2333 text-decoration: underline; | 2369 text-decoration: underline; |
| 2334 } | 2370 } |
| 2335 | 2371 |
| 2336 em { | 2372 em { |
| 2337 color: inherit; | 2373 color: inherit; |
| 2338 font-style:italic; | 2374 font-style: italic; |
| 2375 } |
| 2376 |
| 2377 b { |
| 2378 color: inherit; |
| 2379 font-weight: bold; |
| 2339 } | 2380 } |
| 2340 | 2381 |
| 2341 hr { | 2382 hr { |
| 2342 margin-top: 20px; | 2383 margin-top: 20px; |
| 2343 margin-bottom: 20px; | 2384 margin-bottom: 20px; |
| 2344 border: 0; | 2385 border: 0; |
| 2345 border-top: 1px solid #eee; | 2386 border-top: 1px solid #eee; |
| 2346 height: 0; | 2387 height: 0; |
| 2347 box-sizing: content-box; | 2388 box-sizing: content-box; |
| 2348 } | 2389 } |
| (...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2573 color: #0489c3; | 2614 color: #0489c3; |
| 2574 text-decoration: none; | 2615 text-decoration: none; |
| 2575 } | 2616 } |
| 2576 | 2617 |
| 2577 a:hover { | 2618 a:hover { |
| 2578 text-decoration: underline; | 2619 text-decoration: underline; |
| 2579 } | 2620 } |
| 2580 | 2621 |
| 2581 em { | 2622 em { |
| 2582 color: inherit; | 2623 color: inherit; |
| 2583 font-style:italic; | 2624 font-style: italic; |
| 2625 } |
| 2626 |
| 2627 b { |
| 2628 color: inherit; |
| 2629 font-weight: bold; |
| 2584 } | 2630 } |
| 2585 | 2631 |
| 2586 hr { | 2632 hr { |
| 2587 margin-top: 20px; | 2633 margin-top: 20px; |
| 2588 margin-bottom: 20px; | 2634 margin-bottom: 20px; |
| 2589 border: 0; | 2635 border: 0; |
| 2590 border-top: 1px solid #eee; | 2636 border-top: 1px solid #eee; |
| 2591 height: 0; | 2637 height: 0; |
| 2592 box-sizing: content-box; | 2638 box-sizing: content-box; |
| 2593 } | 2639 } |
| (...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2810 color: #0489c3; | 2856 color: #0489c3; |
| 2811 text-decoration: none; | 2857 text-decoration: none; |
| 2812 } | 2858 } |
| 2813 | 2859 |
| 2814 a:hover { | 2860 a:hover { |
| 2815 text-decoration: underline; | 2861 text-decoration: underline; |
| 2816 } | 2862 } |
| 2817 | 2863 |
| 2818 em { | 2864 em { |
| 2819 color: inherit; | 2865 color: inherit; |
| 2820 font-style:italic; | 2866 font-style: italic; |
| 2867 } |
| 2868 |
| 2869 b { |
| 2870 color: inherit; |
| 2871 font-weight: bold; |
| 2821 } | 2872 } |
| 2822 | 2873 |
| 2823 hr { | 2874 hr { |
| 2824 margin-top: 20px; | 2875 margin-top: 20px; |
| 2825 margin-bottom: 20px; | 2876 margin-bottom: 20px; |
| 2826 border: 0; | 2877 border: 0; |
| 2827 border-top: 1px solid #eee; | 2878 border-top: 1px solid #eee; |
| 2828 height: 0; | 2879 height: 0; |
| 2829 box-sizing: content-box; | 2880 box-sizing: content-box; |
| 2830 } | 2881 } |
| (...skipping 350 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3181 color: #0489c3; | 3232 color: #0489c3; |
| 3182 text-decoration: none; | 3233 text-decoration: none; |
| 3183 } | 3234 } |
| 3184 | 3235 |
| 3185 a:hover { | 3236 a:hover { |
| 3186 text-decoration: underline; | 3237 text-decoration: underline; |
| 3187 } | 3238 } |
| 3188 | 3239 |
| 3189 em { | 3240 em { |
| 3190 color: inherit; | 3241 color: inherit; |
| 3191 font-style:italic; | 3242 font-style: italic; |
| 3243 } |
| 3244 |
| 3245 b { |
| 3246 color: inherit; |
| 3247 font-weight: bold; |
| 3192 } | 3248 } |
| 3193 | 3249 |
| 3194 hr { | 3250 hr { |
| 3195 margin-top: 20px; | 3251 margin-top: 20px; |
| 3196 margin-bottom: 20px; | 3252 margin-bottom: 20px; |
| 3197 border: 0; | 3253 border: 0; |
| 3198 border-top: 1px solid #eee; | 3254 border-top: 1px solid #eee; |
| 3199 height: 0; | 3255 height: 0; |
| 3200 box-sizing: content-box; | 3256 box-sizing: content-box; |
| 3201 } | 3257 } |
| (...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3432 color: #0489c3; | 3488 color: #0489c3; |
| 3433 text-decoration: none; | 3489 text-decoration: none; |
| 3434 } | 3490 } |
| 3435 | 3491 |
| 3436 a:hover { | 3492 a:hover { |
| 3437 text-decoration: underline; | 3493 text-decoration: underline; |
| 3438 } | 3494 } |
| 3439 | 3495 |
| 3440 em { | 3496 em { |
| 3441 color: inherit; | 3497 color: inherit; |
| 3442 font-style:italic; | 3498 font-style: italic; |
| 3499 } |
| 3500 |
| 3501 b { |
| 3502 color: inherit; |
| 3503 font-weight: bold; |
| 3443 } | 3504 } |
| 3444 | 3505 |
| 3445 hr { | 3506 hr { |
| 3446 margin-top: 20px; | 3507 margin-top: 20px; |
| 3447 margin-bottom: 20px; | 3508 margin-bottom: 20px; |
| 3448 border: 0; | 3509 border: 0; |
| 3449 border-top: 1px solid #eee; | 3510 border-top: 1px solid #eee; |
| 3450 height: 0; | 3511 height: 0; |
| 3451 box-sizing: content-box; | 3512 box-sizing: content-box; |
| 3452 } | 3513 } |
| (...skipping 387 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3840 color: #0489c3; | 3901 color: #0489c3; |
| 3841 text-decoration: none; | 3902 text-decoration: none; |
| 3842 } | 3903 } |
| 3843 | 3904 |
| 3844 a:hover { | 3905 a:hover { |
| 3845 text-decoration: underline; | 3906 text-decoration: underline; |
| 3846 } | 3907 } |
| 3847 | 3908 |
| 3848 em { | 3909 em { |
| 3849 color: inherit; | 3910 color: inherit; |
| 3850 font-style:italic; | 3911 font-style: italic; |
| 3912 } |
| 3913 |
| 3914 b { |
| 3915 color: inherit; |
| 3916 font-weight: bold; |
| 3851 } | 3917 } |
| 3852 | 3918 |
| 3853 hr { | 3919 hr { |
| 3854 margin-top: 20px; | 3920 margin-top: 20px; |
| 3855 margin-bottom: 20px; | 3921 margin-bottom: 20px; |
| 3856 border: 0; | 3922 border: 0; |
| 3857 border-top: 1px solid #eee; | 3923 border-top: 1px solid #eee; |
| 3858 height: 0; | 3924 height: 0; |
| 3859 box-sizing: content-box; | 3925 box-sizing: content-box; |
| 3860 } | 3926 } |
| (...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4091 color: #0489c3; | 4157 color: #0489c3; |
| 4092 text-decoration: none; | 4158 text-decoration: none; |
| 4093 } | 4159 } |
| 4094 | 4160 |
| 4095 a:hover { | 4161 a:hover { |
| 4096 text-decoration: underline; | 4162 text-decoration: underline; |
| 4097 } | 4163 } |
| 4098 | 4164 |
| 4099 em { | 4165 em { |
| 4100 color: inherit; | 4166 color: inherit; |
| 4101 font-style:italic; | 4167 font-style: italic; |
| 4168 } |
| 4169 |
| 4170 b { |
| 4171 color: inherit; |
| 4172 font-weight: bold; |
| 4102 } | 4173 } |
| 4103 | 4174 |
| 4104 hr { | 4175 hr { |
| 4105 margin-top: 20px; | 4176 margin-top: 20px; |
| 4106 margin-bottom: 20px; | 4177 margin-bottom: 20px; |
| 4107 border: 0; | 4178 border: 0; |
| 4108 border-top: 1px solid #eee; | 4179 border-top: 1px solid #eee; |
| 4109 height: 0; | 4180 height: 0; |
| 4110 box-sizing: content-box; | 4181 box-sizing: content-box; |
| 4111 } | 4182 } |
| (...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4350 </template> | 4421 </template> |
| 4351 </div> | 4422 </div> |
| 4352 </div> | 4423 </div> |
| 4353 </template> | 4424 </template> |
| 4354 | 4425 |
| 4355 </polymer-element> | 4426 </polymer-element> |
| 4356 | 4427 |
| 4357 | 4428 |
| 4358 | 4429 |
| 4359 | 4430 |
| 4431 |
| 4432 |
| 4433 |
| 4434 |
| 4360 | 4435 |
| 4361 | 4436 |
| 4362 | 4437 <polymer-element name="stack-frame" extends="observatory-element"> |
| 4363 | |
| 4364 | |
| 4365 | |
| 4366 | |
| 4367 <polymer-element name="script-inset" extends="observatory-element"> | |
| 4368 <template> | |
| 4369 <style> | |
| 4370 .sourceInset { | |
| 4371 padding-left: 15%; | |
| 4372 padding-right: 15%; | |
| 4373 } | |
| 4374 .grayBox { | |
| 4375 width: 100%; | |
| 4376 background-color: #f5f5f5; | |
| 4377 border: 1px solid #ccc; | |
| 4378 padding: 10px; | |
| 4379 } | |
| 4380 </style> | |
| 4381 <div class="sourceInset"> | |
| 4382 <content></content> | |
| 4383 <div class="grayBox"> | |
| 4384 <template if="{{ coverage == true }}"> | |
| 4385 <table> | |
| 4386 <tbody> | |
| 4387 <tr template="" repeat="{{ line in lines }}"> | |
| 4388 <td style="{{ hitStyle(line) }}"><span> </span></td> | |
| 4389 <td style="font-family: consolas, courier, monospace;font-size:
1em;line-height: 1.2em;white-space: nowrap;">{{line.line}}</td> | |
| 4390 <td> </td> | |
| 4391 <td width="99%" style="font-family: consolas, courier, monospace
;font-size: 1em;line-height: 1.2em;white-space: pre;">{{line.text}}</td> | |
| 4392 </tr> | |
| 4393 </tbody> | |
| 4394 </table> | |
| 4395 </template> | |
| 4396 <template if="{{ coverage == false }}"> | |
| 4397 <table> | |
| 4398 <tbody> | |
| 4399 <tr template="" repeat="{{ line in lines }}"> | |
| 4400 <td style="font-family: consolas, courier, monospace;font-size:
1em;line-height: 1.2em;white-space: nowrap;">{{line.line}}</td> | |
| 4401 <td> </td> | |
| 4402 <td width="99%" style="font-family: consolas, courier, monospace
;font-size: 1em;line-height: 1.2em;white-space: pre;">{{line.text}}</td> | |
| 4403 </tr> | |
| 4404 </tbody> | |
| 4405 </table> | |
| 4406 </template> | |
| 4407 </div> | |
| 4408 </div> | |
| 4409 </template> | |
| 4410 | |
| 4411 </polymer-element> | |
| 4412 <polymer-element name="function-view" extends="observatory-element"> | |
| 4413 <template> | 4438 <template> |
| 4414 <style> | 4439 <style> |
| 4415 /* Global styles */ | 4440 /* Global styles */ |
| 4416 * { | 4441 * { |
| 4417 margin: 0; | 4442 margin: 0; |
| 4418 padding: 0; | 4443 padding: 0; |
| 4419 font: 400 14px 'Montserrat', sans-serif; | 4444 font: 400 14px 'Montserrat', sans-serif; |
| 4420 color: #333; | 4445 color: #333; |
| 4421 box-sizing: border-box; | 4446 box-sizing: border-box; |
| 4422 } | 4447 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4462 color: #0489c3; | 4487 color: #0489c3; |
| 4463 text-decoration: none; | 4488 text-decoration: none; |
| 4464 } | 4489 } |
| 4465 | 4490 |
| 4466 a:hover { | 4491 a:hover { |
| 4467 text-decoration: underline; | 4492 text-decoration: underline; |
| 4468 } | 4493 } |
| 4469 | 4494 |
| 4470 em { | 4495 em { |
| 4471 color: inherit; | 4496 color: inherit; |
| 4472 font-style:italic; | 4497 font-style: italic; |
| 4498 } |
| 4499 |
| 4500 b { |
| 4501 color: inherit; |
| 4502 font-weight: bold; |
| 4473 } | 4503 } |
| 4474 | 4504 |
| 4475 hr { | 4505 hr { |
| 4476 margin-top: 20px; | 4506 margin-top: 20px; |
| 4477 margin-bottom: 20px; | 4507 margin-bottom: 20px; |
| 4478 border: 0; | 4508 border: 0; |
| 4479 border-top: 1px solid #eee; | 4509 border-top: 1px solid #eee; |
| 4480 height: 0; | 4510 height: 0; |
| 4481 box-sizing: content-box; | 4511 box-sizing: content-box; |
| 4482 } | 4512 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4635 background-color: #f5f5f5; | 4665 background-color: #f5f5f5; |
| 4636 border: 1px solid #e3e3e3; | 4666 border: 1px solid #e3e3e3; |
| 4637 border-radius: 4px; | 4667 border-radius: 4px; |
| 4638 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 4668 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 4639 } | 4669 } |
| 4640 | 4670 |
| 4641 .break-wrap { | 4671 .break-wrap { |
| 4642 word-wrap: break-word; | 4672 word-wrap: break-word; |
| 4643 } | 4673 } |
| 4644 </style> | 4674 </style> |
| 4645 <nav-bar> | 4675 <div class="flex-row"> |
| 4646 <top-nav-menu></top-nav-menu> | 4676 <div class="flex-item-fixed-1-12"> |
| 4647 <isolate-nav-menu isolate="{{ function.isolate }}"></isolate-nav-menu> | 4677 </div> |
| 4648 <template if="{{ function['owner'].serviceType == 'Class' }}"> | 4678 <div class="flex-item-fixed-1-12"> |
| 4649 <!-- TODO(turnidge): Add library nav menu here. --> | 4679 #{{ frame['depth'] }} |
| 4650 <class-nav-menu cls="{{ function['owner'] }}"></class-nav-menu> | 4680 </div> |
| 4651 </template> | 4681 <div class="flex-item-fixed-9-12"> |
| 4652 <template if="{{ function['owner'].serviceType == 'Library' }}"> | 4682 <function-ref ref="{{ frame['function'] }}"></function-ref> |
| 4653 <library-nav-menu library="{{ function['owner'] }}"></library-nav-menu> | 4683 ( <script-ref ref="{{ frame['script'] }}" pos="{{ frame['tokenPos'] }}
"> |
| 4654 </template> | 4684 </script-ref> ) |
| 4655 <nav-menu link="{{ function.hashLink }}" anchor="{{ function.name }}" last
="{{ true }}"></nav-menu> | |
| 4656 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
| 4657 </nav-bar> | |
| 4658 | 4685 |
| 4659 <div class="content"> | 4686 <curly-block> |
| 4660 <h1>function {{ qualifiedName }}</h1> | 4687 <div class="memberList"> |
| 4661 | 4688 <template repeat="{{ v in frame['vars'] }}"> |
| 4662 <div class="memberList"> | 4689 <div class="memberItem"> |
| 4663 <div class="memberItem"> | 4690 <div class="memberName">{{ v['name']}}</div> |
| 4664 <div class="memberName">kind</div> | 4691 <div class="memberValue"> |
| 4665 <div class="memberValue"> | 4692 <instance-ref ref="{{ v['value'] }}"></instance-ref> |
| 4666 <template if="{{ function['is_static'] }}">static</template> | 4693 </div> |
| 4667 <template if="{{ function['is_const'] }}">const</template> | 4694 </div> |
| 4668 {{ kind }} | 4695 </template> |
| 4669 </div> | |
| 4670 </div> | |
| 4671 <template if="{{ function['parent'] != null }}"> | |
| 4672 <div class="memberItem"> | |
| 4673 <div class="memberName">parent function</div> | |
| 4674 <div class="memberValue"> | |
| 4675 <function-ref ref="{{ function['parent'] }}"></function-ref> | |
| 4676 </div> | 4696 </div> |
| 4677 </div> | 4697 </curly-block> |
| 4678 </template> | 4698 </div> |
| 4679 <div class="memberItem"> | 4699 <div class="flex-item-fixed-1-12"> |
| 4680 <div class="memberName">owner</div> | 4700 </div> |
| 4681 <div class="memberValue"> | |
| 4682 <template if="{{ function['owner'].serviceType == 'Class' }}"> | |
| 4683 <class-ref ref="{{ function['owner'] }}"></class-ref> | |
| 4684 </template> | |
| 4685 <template if="{{ function['owner'].serviceType != 'Class' }}"> | |
| 4686 <library-ref ref="{{ function['owner'] }}"></library-ref> | |
| 4687 </template> | |
| 4688 </div> | |
| 4689 </div> | |
| 4690 <div class="memberItem"> | |
| 4691 <div class="memberName">script</div> | |
| 4692 <div class="memberValue"> | |
| 4693 <script-ref ref="{{ function['script'] }}" pos="{{ function['tokenPo
s'] }}"> | |
| 4694 </script-ref> | |
| 4695 </div> | |
| 4696 </div> | |
| 4697 | |
| 4698 <div class="memberItem"> </div> | |
| 4699 | |
| 4700 <template if="{{ function['code'] != null }}"> | |
| 4701 <div class="memberItem"> | |
| 4702 <div class="memberName">optimized code</div> | |
| 4703 <div class="memberValue"> | |
| 4704 <code-ref ref="{{ function['code'] }}"></code-ref> | |
| 4705 </div> | |
| 4706 </div> | |
| 4707 </template> | |
| 4708 <template if="{{ function['unoptimized_code'] != null }}"> | |
| 4709 <div class="memberItem"> | |
| 4710 <div class="memberName">unoptimized code</div> | |
| 4711 <div class="memberValue"> | |
| 4712 <code-ref ref="{{ function['unoptimized_code'] }}"></code-ref> | |
| 4713 </div> | |
| 4714 <div class="memberValue"> | |
| 4715 <span title="This count is used to determine when a function wil
l be optimized. It is a combination of call counts and other factors."> | |
| 4716 (usage count: {{ function['usage_counter'] }}) | |
| 4717 </span> | |
| 4718 </div> | |
| 4719 </div> | |
| 4720 </template> | |
| 4721 <div class="memberItem"> | |
| 4722 <div class="memberName">deoptimizations</div> | |
| 4723 <div class="memberValue">{{ function['deoptimizations'] }}</div> | |
| 4724 </div> | |
| 4725 <div class="memberItem"> | |
| 4726 <div class="memberName">optimizable</div> | |
| 4727 <div class="memberValue">{{ function['is_optimizable'] }}</div> | |
| 4728 </div> | |
| 4729 <div class="memberItem"> | |
| 4730 <div class="memberName">inlinable</div> | |
| 4731 <div class="memberValue">{{ function['is_inlinable'] }}</div> | |
| 4732 </div> | |
| 4733 <template if="{{ function.name != function.vmName }}"> | |
| 4734 <div class="memberItem"> | |
| 4735 <div class="memberName">vm name</div> | |
| 4736 <div class="memberValue">{{ function.vmName }}</div> | |
| 4737 </div> | |
| 4738 </template> | |
| 4739 </div> | |
| 4740 </div> | 4701 </div> |
| 4741 | |
| 4742 <hr> | |
| 4743 <script-inset script="{{ function['script'] }}" pos="{{ function['tokenPos']
}}" endpos="{{ function['endTokenPos'] }}"> | |
| 4744 </script-inset> | |
| 4745 | |
| 4746 <br> | |
| 4747 </template> | 4702 </template> |
| 4748 | 4703 |
| 4749 </polymer-element> | 4704 </polymer-element> |
| 4750 | 4705 <polymer-element name="flag-list" extends="observatory-element"> |
| 4751 | 4706 <template> |
| 4752 | 4707 <style> |
| 4753 | |
| 4754 <polymer-element name="heap-map" extends="observatory-element"> | |
| 4755 <template> | |
| 4756 <style> | |
| 4757 /* Global styles */ | 4708 /* Global styles */ |
| 4758 * { | 4709 * { |
| 4759 margin: 0; | 4710 margin: 0; |
| 4760 padding: 0; | 4711 padding: 0; |
| 4761 font: 400 14px 'Montserrat', sans-serif; | 4712 font: 400 14px 'Montserrat', sans-serif; |
| 4762 color: #333; | 4713 color: #333; |
| 4763 box-sizing: border-box; | 4714 box-sizing: border-box; |
| 4764 } | 4715 } |
| 4765 | 4716 |
| 4766 .content { | 4717 .content { |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4804 color: #0489c3; | 4755 color: #0489c3; |
| 4805 text-decoration: none; | 4756 text-decoration: none; |
| 4806 } | 4757 } |
| 4807 | 4758 |
| 4808 a:hover { | 4759 a:hover { |
| 4809 text-decoration: underline; | 4760 text-decoration: underline; |
| 4810 } | 4761 } |
| 4811 | 4762 |
| 4812 em { | 4763 em { |
| 4813 color: inherit; | 4764 color: inherit; |
| 4814 font-style:italic; | 4765 font-style: italic; |
| 4766 } |
| 4767 |
| 4768 b { |
| 4769 color: inherit; |
| 4770 font-weight: bold; |
| 4815 } | 4771 } |
| 4816 | 4772 |
| 4817 hr { | 4773 hr { |
| 4818 margin-top: 20px; | 4774 margin-top: 20px; |
| 4819 margin-bottom: 20px; | 4775 margin-bottom: 20px; |
| 4820 border: 0; | 4776 border: 0; |
| 4821 border-top: 1px solid #eee; | 4777 border-top: 1px solid #eee; |
| 4822 height: 0; | 4778 height: 0; |
| 4823 box-sizing: content-box; | 4779 box-sizing: content-box; |
| 4824 } | 4780 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4977 background-color: #f5f5f5; | 4933 background-color: #f5f5f5; |
| 4978 border: 1px solid #e3e3e3; | 4934 border: 1px solid #e3e3e3; |
| 4979 border-radius: 4px; | 4935 border-radius: 4px; |
| 4980 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 4936 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 4981 } | 4937 } |
| 4982 | 4938 |
| 4983 .break-wrap { | 4939 .break-wrap { |
| 4984 word-wrap: break-word; | 4940 word-wrap: break-word; |
| 4985 } | 4941 } |
| 4986 </style> | 4942 </style> |
| 4987 <style> | 4943 <nav-bar> |
| 4988 .hover { | 4944 <top-nav-menu></top-nav-menu> |
| 4989 position: fixed; | 4945 <nav-menu link="{{ flagList.isolate.relativeHashLink('flags') }}" anchor="
flags" last="{{ true }}"></nav-menu> |
| 4990 z-index: 999; | 4946 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 4991 height: 16px; | 4947 </nav-bar> |
| 4992 width: 100%; | |
| 4993 background: #ffffff; | |
| 4994 } | |
| 4995 .spacer { | |
| 4996 height: 16px; | |
| 4997 background-color: red; | |
| 4998 } | |
| 4999 </style> | |
| 5000 <nav-bar pad="{{ false }}"> | |
| 5001 <top-nav-menu></top-nav-menu> | |
| 5002 <isolate-nav-menu isolate="{{ fragmentation.isolate }}"></isolate-nav-menu> | |
| 5003 <nav-menu link="{{ fragmentation.isolate.relativeHashLink('heapmap') }}" anc
hor="heap map" last="{{ true }}"></nav-menu> | |
| 5004 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
| 5005 </nav-bar> | |
| 5006 <div class="hover"> | |
| 5007 <p style="text-align:center">{{ status }}</p> | |
| 5008 </div> | |
| 5009 <div class="spacer"> | |
| 5010 <!-- Make sure no data is covered by hover bar initially --> | |
| 5011 </div> | |
| 5012 <div class="flex-row"> | |
| 5013 <canvas id="fragmentation" width="1px" height="1px"></canvas> | |
| 5014 </div> | |
| 5015 </template> | |
| 5016 | 4948 |
| 4949 <div class="content-centered"> |
| 4950 <template if="{{ flagList['modifiedFlags'].isNotEmpty }}"> |
| 4951 <h1>Modified Flags</h1> |
| 4952 <br> |
| 4953 <template repeat="{{ flag in flagList['modifiedFlags'] }}"> |
| 4954 <flag-item flag="{{ flag }}"></flag-item> |
| 4955 <br> |
| 4956 </template> |
| 4957 <hr> |
| 4958 </template> |
| 4959 |
| 4960 <h1>Unmodified Flags</h1> |
| 4961 <br> |
| 4962 <template if="{{ flagList['unmodifiedFlags'].isEmpty }}"> |
| 4963 <em>None</em> |
| 4964 </template> |
| 4965 <template if="{{ flagList['unmodifiedFlags'].isNotEmpty }}"> |
| 4966 <template repeat="{{ flag in flagList['unmodifiedFlags'] }}"> |
| 4967 <flag-item flag="{{ flag }}"></flag-item> |
| 4968 <br> |
| 4969 </template> |
| 4970 </template> |
| 4971 </div> |
| 4972 |
| 4973 </template> |
| 5017 </polymer-element> | 4974 </polymer-element> |
| 5018 | 4975 |
| 5019 | 4976 <polymer-element name="flag-item" extends="observatory-element"> |
| 5020 | |
| 5021 | |
| 5022 <polymer-element name="io-view" extends="observatory-element"> | |
| 5023 <template> | 4977 <template> |
| 5024 <style> | 4978 <style> |
| 5025 /* Global styles */ | 4979 /* Global styles */ |
| 5026 * { | 4980 * { |
| 5027 margin: 0; | 4981 margin: 0; |
| 5028 padding: 0; | 4982 padding: 0; |
| 5029 font: 400 14px 'Montserrat', sans-serif; | 4983 font: 400 14px 'Montserrat', sans-serif; |
| 5030 color: #333; | 4984 color: #333; |
| 5031 box-sizing: border-box; | 4985 box-sizing: border-box; |
| 5032 } | 4986 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5072 color: #0489c3; | 5026 color: #0489c3; |
| 5073 text-decoration: none; | 5027 text-decoration: none; |
| 5074 } | 5028 } |
| 5075 | 5029 |
| 5076 a:hover { | 5030 a:hover { |
| 5077 text-decoration: underline; | 5031 text-decoration: underline; |
| 5078 } | 5032 } |
| 5079 | 5033 |
| 5080 em { | 5034 em { |
| 5081 color: inherit; | 5035 color: inherit; |
| 5082 font-style:italic; | 5036 font-style: italic; |
| 5037 } |
| 5038 |
| 5039 b { |
| 5040 color: inherit; |
| 5041 font-weight: bold; |
| 5083 } | 5042 } |
| 5084 | 5043 |
| 5085 hr { | 5044 hr { |
| 5086 margin-top: 20px; | 5045 margin-top: 20px; |
| 5087 margin-bottom: 20px; | 5046 margin-bottom: 20px; |
| 5088 border: 0; | 5047 border: 0; |
| 5089 border-top: 1px solid #eee; | 5048 border-top: 1px solid #eee; |
| 5090 height: 0; | 5049 height: 0; |
| 5091 box-sizing: content-box; | 5050 box-sizing: content-box; |
| 5092 } | 5051 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5245 background-color: #f5f5f5; | 5204 background-color: #f5f5f5; |
| 5246 border: 1px solid #e3e3e3; | 5205 border: 1px solid #e3e3e3; |
| 5247 border-radius: 4px; | 5206 border-radius: 4px; |
| 5248 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 5207 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 5249 } | 5208 } |
| 5250 | 5209 |
| 5251 .break-wrap { | 5210 .break-wrap { |
| 5252 word-wrap: break-word; | 5211 word-wrap: break-word; |
| 5253 } | 5212 } |
| 5254 </style> | 5213 </style> |
| 5255 | 5214 <span style="color:#aaa">// {{ flag['comment'] }}</span> |
| 5256 <nav-bar> | 5215 <div style="padding: 3px 0"> |
| 5257 <top-nav-menu last="{{ true }}"></top-nav-menu> | 5216 <b>{{ flag['name'] }}</b> |
| 5258 <nav-refresh callback="{{ refresh }}"></nav-refresh> | 5217 = |
| 5259 </nav-bar> | 5218 {{ flag['valueAsString'] }} |
| 5260 | |
| 5261 <div class="content"> | |
| 5262 <h1>dart:io</h1> | |
| 5263 | |
| 5264 <br> | |
| 5265 | |
| 5266 <ul class="list-group"> | |
| 5267 <li class="list-group-item"> | |
| 5268 <a href="{{io.isolate.relativeHashLink('io/http/servers')}}">HTTP Serv
ers</a> | |
| 5269 </li> | |
| 5270 </ul> | |
| 5271 | |
| 5272 <br> | |
| 5273 | |
| 5274 <ul class="list-group"> | |
| 5275 <li class="list-group-item"> | |
| 5276 <a href="{{io.isolate.relativeHashLink('io/sockets')}}">Sockets</a> | |
| 5277 </li> | |
| 5278 </ul> | |
| 5279 | |
| 5280 <br> | |
| 5281 | |
| 5282 <ul class="list-group"> | |
| 5283 <li class="list-group-item"> | |
| 5284 <a href="{{io.isolate.relativeHashLink('io/websockets')}}">WebSockets<
/a> | |
| 5285 </li> | |
| 5286 </ul> | |
| 5287 | |
| 5288 <br> | |
| 5289 | |
| 5290 <ul class="list-group"> | |
| 5291 <li class="list-group-item"> | |
| 5292 <a href="{{io.isolate.relativeHashLink('io/file/randomaccessfiles')}}"
>Random Access Files</a> | |
| 5293 </li> | |
| 5294 </ul> | |
| 5295 | |
| 5296 <br> | |
| 5297 | |
| 5298 <ul class="list-group"> | |
| 5299 <li class="list-group-item"> | |
| 5300 <a href="{{io.isolate.relativeHashLink('io/processes')}}">Processess</
a> | |
| 5301 </li> | |
| 5302 </ul> | |
| 5303 | |
| 5304 </div> | 5219 </div> |
| 5305 <br> | |
| 5306 <hr> | |
| 5307 </template> | 5220 </template> |
| 5308 </polymer-element> | 5221 </polymer-element> |
| 5309 | 5222 |
| 5310 <polymer-element name="io-http-server-list-view" extends="observatory-element"> | 5223 |
| 5224 |
| 5225 |
| 5226 |
| 5227 |
| 5228 |
| 5229 |
| 5230 |
| 5231 |
| 5232 |
| 5233 |
| 5234 |
| 5235 <polymer-element name="script-inset" extends="observatory-element"> |
| 5236 <template> |
| 5237 <style> |
| 5238 .sourceInset { |
| 5239 padding-left: 15%; |
| 5240 padding-right: 15%; |
| 5241 } |
| 5242 .grayBox { |
| 5243 width: 100%; |
| 5244 background-color: #f5f5f5; |
| 5245 border: 1px solid #ccc; |
| 5246 padding: 10px; |
| 5247 } |
| 5248 </style> |
| 5249 <div class="sourceInset"> |
| 5250 <content></content> |
| 5251 <div class="grayBox"> |
| 5252 <template if="{{ coverage == true }}"> |
| 5253 <table> |
| 5254 <tbody> |
| 5255 <tr template="" repeat="{{ line in lines }}"> |
| 5256 <td style="{{ hitStyle(line) }}"><span> </span></td> |
| 5257 <td style="font-family: consolas, courier, monospace;font-size:
1em;line-height: 1.2em;white-space: nowrap;">{{line.line}}</td> |
| 5258 <td> </td> |
| 5259 <td width="99%" style="font-family: consolas, courier, monospace
;font-size: 1em;line-height: 1.2em;white-space: pre;">{{line.text}}</td> |
| 5260 </tr> |
| 5261 </tbody> |
| 5262 </table> |
| 5263 </template> |
| 5264 <template if="{{ coverage == false }}"> |
| 5265 <table> |
| 5266 <tbody> |
| 5267 <tr template="" repeat="{{ line in lines }}"> |
| 5268 <td style="font-family: consolas, courier, monospace;font-size:
1em;line-height: 1.2em;white-space: nowrap;">{{line.line}}</td> |
| 5269 <td> </td> |
| 5270 <td width="99%" style="font-family: consolas, courier, monospace
;font-size: 1em;line-height: 1.2em;white-space: pre;">{{line.text}}</td> |
| 5271 </tr> |
| 5272 </tbody> |
| 5273 </table> |
| 5274 </template> |
| 5275 </div> |
| 5276 </div> |
| 5277 </template> |
| 5278 |
| 5279 </polymer-element> |
| 5280 <polymer-element name="function-view" extends="observatory-element"> |
| 5311 <template> | 5281 <template> |
| 5312 <style> | 5282 <style> |
| 5313 /* Global styles */ | 5283 /* Global styles */ |
| 5314 * { | 5284 * { |
| 5315 margin: 0; | 5285 margin: 0; |
| 5316 padding: 0; | 5286 padding: 0; |
| 5317 font: 400 14px 'Montserrat', sans-serif; | 5287 font: 400 14px 'Montserrat', sans-serif; |
| 5318 color: #333; | 5288 color: #333; |
| 5319 box-sizing: border-box; | 5289 box-sizing: border-box; |
| 5320 } | 5290 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5360 color: #0489c3; | 5330 color: #0489c3; |
| 5361 text-decoration: none; | 5331 text-decoration: none; |
| 5362 } | 5332 } |
| 5363 | 5333 |
| 5364 a:hover { | 5334 a:hover { |
| 5365 text-decoration: underline; | 5335 text-decoration: underline; |
| 5366 } | 5336 } |
| 5367 | 5337 |
| 5368 em { | 5338 em { |
| 5369 color: inherit; | 5339 color: inherit; |
| 5370 font-style:italic; | 5340 font-style: italic; |
| 5341 } |
| 5342 |
| 5343 b { |
| 5344 color: inherit; |
| 5345 font-weight: bold; |
| 5371 } | 5346 } |
| 5372 | 5347 |
| 5373 hr { | 5348 hr { |
| 5374 margin-top: 20px; | 5349 margin-top: 20px; |
| 5375 margin-bottom: 20px; | 5350 margin-bottom: 20px; |
| 5376 border: 0; | 5351 border: 0; |
| 5377 border-top: 1px solid #eee; | 5352 border-top: 1px solid #eee; |
| 5378 height: 0; | 5353 height: 0; |
| 5379 box-sizing: content-box; | 5354 box-sizing: content-box; |
| 5380 } | 5355 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5533 background-color: #f5f5f5; | 5508 background-color: #f5f5f5; |
| 5534 border: 1px solid #e3e3e3; | 5509 border: 1px solid #e3e3e3; |
| 5535 border-radius: 4px; | 5510 border-radius: 4px; |
| 5536 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 5511 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 5537 } | 5512 } |
| 5538 | 5513 |
| 5539 .break-wrap { | 5514 .break-wrap { |
| 5540 word-wrap: break-word; | 5515 word-wrap: break-word; |
| 5541 } | 5516 } |
| 5542 </style> | 5517 </style> |
| 5543 | |
| 5544 <nav-bar> | 5518 <nav-bar> |
| 5545 <top-nav-menu last="{{ true }}"></top-nav-menu> | 5519 <top-nav-menu></top-nav-menu> |
| 5520 <isolate-nav-menu isolate="{{ function.isolate }}"></isolate-nav-menu> |
| 5521 <template if="{{ function['owner'].serviceType == 'Class' }}"> |
| 5522 <!-- TODO(turnidge): Add library nav menu here. --> |
| 5523 <class-nav-menu cls="{{ function['owner'] }}"></class-nav-menu> |
| 5524 </template> |
| 5525 <template if="{{ function['owner'].serviceType == 'Library' }}"> |
| 5526 <library-nav-menu library="{{ function['owner'] }}"></library-nav-menu> |
| 5527 </template> |
| 5528 <nav-menu link="{{ function.hashLink }}" anchor="{{ function.name }}" last
="{{ true }}"></nav-menu> |
| 5546 <nav-refresh callback="{{ refresh }}"></nav-refresh> | 5529 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 5547 </nav-bar> | 5530 </nav-bar> |
| 5548 | 5531 |
| 5549 <div class="content"> | 5532 <div class="content"> |
| 5550 <h1>HttpServers</h1> | 5533 <h1>function {{ qualifiedName }}</h1> |
| 5551 | 5534 |
| 5552 <br> | 5535 <div class="memberList"> |
| 5536 <div class="memberItem"> |
| 5537 <div class="memberName">kind</div> |
| 5538 <div class="memberValue"> |
| 5539 <template if="{{ function['is_static'] }}">static</template> |
| 5540 <template if="{{ function['is_const'] }}">const</template> |
| 5541 {{ kind }} |
| 5542 </div> |
| 5543 </div> |
| 5544 <template if="{{ function['parent'] != null }}"> |
| 5545 <div class="memberItem"> |
| 5546 <div class="memberName">parent function</div> |
| 5547 <div class="memberValue"> |
| 5548 <function-ref ref="{{ function['parent'] }}"></function-ref> |
| 5549 </div> |
| 5550 </div> |
| 5551 </template> |
| 5552 <div class="memberItem"> |
| 5553 <div class="memberName">owner</div> |
| 5554 <div class="memberValue"> |
| 5555 <template if="{{ function['owner'].serviceType == 'Class' }}"> |
| 5556 <class-ref ref="{{ function['owner'] }}"></class-ref> |
| 5557 </template> |
| 5558 <template if="{{ function['owner'].serviceType != 'Class' }}"> |
| 5559 <library-ref ref="{{ function['owner'] }}"></library-ref> |
| 5560 </template> |
| 5561 </div> |
| 5562 </div> |
| 5563 <div class="memberItem"> |
| 5564 <div class="memberName">script</div> |
| 5565 <div class="memberValue"> |
| 5566 <script-ref ref="{{ function['script'] }}" pos="{{ function['tokenPo
s'] }}"> |
| 5567 </script-ref> |
| 5568 </div> |
| 5569 </div> |
| 5553 | 5570 |
| 5554 <ul class="list-group"> | 5571 <div class="memberItem"> </div> |
| 5555 <template repeat="{{ httpServer in list['members'] }}"> | 5572 |
| 5556 <li class="list-group-item"> | 5573 <template if="{{ function['code'] != null }}"> |
| 5557 <io-http-server-ref ref="{{ httpServer }}"></io-http-server-ref> | 5574 <div class="memberItem"> |
| 5558 </li> | 5575 <div class="memberName">optimized code</div> |
| 5576 <div class="memberValue"> |
| 5577 <code-ref ref="{{ function['code'] }}"></code-ref> |
| 5578 </div> |
| 5579 </div> |
| 5559 </template> | 5580 </template> |
| 5560 </ul> | 5581 <template if="{{ function['unoptimized_code'] != null }}"> |
| 5582 <div class="memberItem"> |
| 5583 <div class="memberName">unoptimized code</div> |
| 5584 <div class="memberValue"> |
| 5585 <code-ref ref="{{ function['unoptimized_code'] }}"></code-ref> |
| 5586 </div> |
| 5587 <div class="memberValue"> |
| 5588 <span title="This count is used to determine when a function wil
l be optimized. It is a combination of call counts and other factors."> |
| 5589 (usage count: {{ function['usage_counter'] }}) |
| 5590 </span> |
| 5591 </div> |
| 5592 </div> |
| 5593 </template> |
| 5594 <div class="memberItem"> |
| 5595 <div class="memberName">deoptimizations</div> |
| 5596 <div class="memberValue">{{ function['deoptimizations'] }}</div> |
| 5597 </div> |
| 5598 <div class="memberItem"> |
| 5599 <div class="memberName">optimizable</div> |
| 5600 <div class="memberValue">{{ function['is_optimizable'] }}</div> |
| 5601 </div> |
| 5602 <div class="memberItem"> |
| 5603 <div class="memberName">inlinable</div> |
| 5604 <div class="memberValue">{{ function['is_inlinable'] }}</div> |
| 5605 </div> |
| 5606 <template if="{{ function.name != function.vmName }}"> |
| 5607 <div class="memberItem"> |
| 5608 <div class="memberName">vm name</div> |
| 5609 <div class="memberValue">{{ function.vmName }}</div> |
| 5610 </div> |
| 5611 </template> |
| 5612 </div> |
| 5561 </div> | 5613 </div> |
| 5614 |
| 5615 <hr> |
| 5616 <script-inset script="{{ function['script'] }}" pos="{{ function['tokenPos']
}}" endpos="{{ function['endTokenPos'] }}"> |
| 5617 </script-inset> |
| 5618 |
| 5562 <br> | 5619 <br> |
| 5563 <hr> | |
| 5564 </template> | 5620 </template> |
| 5621 |
| 5565 </polymer-element> | 5622 </polymer-element> |
| 5566 | 5623 |
| 5567 <polymer-element name="io-http-server-ref" extends="service-ref"> | 5624 |
| 5568 <template> | 5625 |
| 5569 <style> | 5626 |
| 5627 <polymer-element name="heap-map" extends="observatory-element"> |
| 5628 <template> |
| 5629 <style> |
| 5570 /* Global styles */ | 5630 /* Global styles */ |
| 5571 * { | 5631 * { |
| 5572 margin: 0; | 5632 margin: 0; |
| 5573 padding: 0; | 5633 padding: 0; |
| 5574 font: 400 14px 'Montserrat', sans-serif; | 5634 font: 400 14px 'Montserrat', sans-serif; |
| 5575 color: #333; | 5635 color: #333; |
| 5576 box-sizing: border-box; | 5636 box-sizing: border-box; |
| 5577 } | 5637 } |
| 5578 | 5638 |
| 5579 .content { | 5639 .content { |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5617 color: #0489c3; | 5677 color: #0489c3; |
| 5618 text-decoration: none; | 5678 text-decoration: none; |
| 5619 } | 5679 } |
| 5620 | 5680 |
| 5621 a:hover { | 5681 a:hover { |
| 5622 text-decoration: underline; | 5682 text-decoration: underline; |
| 5623 } | 5683 } |
| 5624 | 5684 |
| 5625 em { | 5685 em { |
| 5626 color: inherit; | 5686 color: inherit; |
| 5627 font-style:italic; | 5687 font-style: italic; |
| 5688 } |
| 5689 |
| 5690 b { |
| 5691 color: inherit; |
| 5692 font-weight: bold; |
| 5628 } | 5693 } |
| 5629 | 5694 |
| 5630 hr { | 5695 hr { |
| 5631 margin-top: 20px; | 5696 margin-top: 20px; |
| 5632 margin-bottom: 20px; | 5697 margin-bottom: 20px; |
| 5633 border: 0; | 5698 border: 0; |
| 5634 border-top: 1px solid #eee; | 5699 border-top: 1px solid #eee; |
| 5635 height: 0; | 5700 height: 0; |
| 5636 box-sizing: content-box; | 5701 box-sizing: content-box; |
| 5637 } | 5702 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5790 background-color: #f5f5f5; | 5855 background-color: #f5f5f5; |
| 5791 border: 1px solid #e3e3e3; | 5856 border: 1px solid #e3e3e3; |
| 5792 border-radius: 4px; | 5857 border-radius: 4px; |
| 5793 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 5858 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 5794 } | 5859 } |
| 5795 | 5860 |
| 5796 .break-wrap { | 5861 .break-wrap { |
| 5797 word-wrap: break-word; | 5862 word-wrap: break-word; |
| 5798 } | 5863 } |
| 5799 </style> | 5864 </style> |
| 5800 <a href="{{ url }}">{{ name }}</a> | 5865 <style> |
| 5801 </template> | 5866 .hover { |
| 5867 position: fixed; |
| 5868 z-index: 999; |
| 5869 height: 16px; |
| 5870 width: 100%; |
| 5871 background: #ffffff; |
| 5872 } |
| 5873 .spacer { |
| 5874 height: 16px; |
| 5875 background-color: red; |
| 5876 } |
| 5877 </style> |
| 5878 <nav-bar pad="{{ false }}"> |
| 5879 <top-nav-menu></top-nav-menu> |
| 5880 <isolate-nav-menu isolate="{{ fragmentation.isolate }}"></isolate-nav-menu> |
| 5881 <nav-menu link="{{ fragmentation.isolate.relativeHashLink('heapmap') }}" anc
hor="heap map" last="{{ true }}"></nav-menu> |
| 5882 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 5883 </nav-bar> |
| 5884 <div class="hover"> |
| 5885 <p style="text-align:center">{{ status }}</p> |
| 5886 </div> |
| 5887 <div class="spacer"> |
| 5888 <!-- Make sure no data is covered by hover bar initially --> |
| 5889 </div> |
| 5890 <div class="flex-row"> |
| 5891 <canvas id="fragmentation" width="1px" height="1px"></canvas> |
| 5892 </div> |
| 5893 </template> |
| 5894 |
| 5802 </polymer-element> | 5895 </polymer-element> |
| 5803 | 5896 |
| 5804 <polymer-element name="io-http-server-view" extends="observatory-element"> | 5897 |
| 5898 |
| 5899 |
| 5900 <polymer-element name="io-view" extends="observatory-element"> |
| 5805 <template> | 5901 <template> |
| 5806 <style> | 5902 <style> |
| 5807 /* Global styles */ | 5903 /* Global styles */ |
| 5808 * { | 5904 * { |
| 5809 margin: 0; | 5905 margin: 0; |
| 5810 padding: 0; | 5906 padding: 0; |
| 5811 font: 400 14px 'Montserrat', sans-serif; | 5907 font: 400 14px 'Montserrat', sans-serif; |
| 5812 color: #333; | 5908 color: #333; |
| 5813 box-sizing: border-box; | 5909 box-sizing: border-box; |
| 5814 } | 5910 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5854 color: #0489c3; | 5950 color: #0489c3; |
| 5855 text-decoration: none; | 5951 text-decoration: none; |
| 5856 } | 5952 } |
| 5857 | 5953 |
| 5858 a:hover { | 5954 a:hover { |
| 5859 text-decoration: underline; | 5955 text-decoration: underline; |
| 5860 } | 5956 } |
| 5861 | 5957 |
| 5862 em { | 5958 em { |
| 5863 color: inherit; | 5959 color: inherit; |
| 5864 font-style:italic; | 5960 font-style: italic; |
| 5961 } |
| 5962 |
| 5963 b { |
| 5964 color: inherit; |
| 5965 font-weight: bold; |
| 5865 } | 5966 } |
| 5866 | 5967 |
| 5867 hr { | 5968 hr { |
| 5868 margin-top: 20px; | 5969 margin-top: 20px; |
| 5869 margin-bottom: 20px; | 5970 margin-bottom: 20px; |
| 5870 border: 0; | 5971 border: 0; |
| 5871 border-top: 1px solid #eee; | 5972 border-top: 1px solid #eee; |
| 5872 height: 0; | 5973 height: 0; |
| 5873 box-sizing: content-box; | 5974 box-sizing: content-box; |
| 5874 } | 5975 } |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6034 word-wrap: break-word; | 6135 word-wrap: break-word; |
| 6035 } | 6136 } |
| 6036 </style> | 6137 </style> |
| 6037 | 6138 |
| 6038 <nav-bar> | 6139 <nav-bar> |
| 6039 <top-nav-menu last="{{ true }}"></top-nav-menu> | 6140 <top-nav-menu last="{{ true }}"></top-nav-menu> |
| 6040 <nav-refresh callback="{{ refresh }}"></nav-refresh> | 6141 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 6041 </nav-bar> | 6142 </nav-bar> |
| 6042 | 6143 |
| 6043 <div class="content"> | 6144 <div class="content"> |
| 6044 <h1>HttpServer</h1> | 6145 <h1>dart:io</h1> |
| 6045 | 6146 |
| 6046 <br> | 6147 <br> |
| 6047 | 6148 |
| 6048 <div class="memberList"> | 6149 <ul class="list-group"> |
| 6049 <div class="memberItem"> | 6150 <li class="list-group-item"> |
| 6050 <div class="memberName">Socket</div> | 6151 <a href="{{io.isolate.relativeHashLink('io/http/servers')}}">HTTP Serv
ers</a> |
| 6051 <div class="memberValue"><io-socket-ref ref="{{ httpServer['socket'] }
}"></io-socket-ref></div> | 6152 </li> |
| 6052 </div> | 6153 </ul> |
| 6053 <div class="memberItem"> | 6154 |
| 6054 <div class="memberName">Address</div> | 6155 <br> |
| 6055 <div class="memberValue">{{ httpServer['address'] }}</div> | 6156 |
| 6056 </div> | 6157 <ul class="list-group"> |
| 6057 <div class="memberItem"> | 6158 <li class="list-group-item"> |
| 6058 <div class="memberName">Port</div> | 6159 <a href="{{io.isolate.relativeHashLink('io/sockets')}}">Sockets</a> |
| 6059 <div class="memberValue">{{ httpServer['port'] }}</div> | 6160 </li> |
| 6060 </div> | 6161 </ul> |
| 6061 <div class="memberItem"> | 6162 |
| 6062 <div class="memberName">Active connections</div> | 6163 <br> |
| 6063 <div class="memberValue">{{ httpServer['active'] }}</div> | 6164 |
| 6064 </div> | 6165 <ul class="list-group"> |
| 6065 <div class="memberItem"> | 6166 <li class="list-group-item"> |
| 6066 <div class="memberName">Idle connections</div> | 6167 <a href="{{io.isolate.relativeHashLink('io/websockets')}}">WebSockets<
/a> |
| 6067 <div class="memberValue">{{ httpServer['idle'] }}</div> | 6168 </li> |
| 6068 </div> | 6169 </ul> |
| 6069 </div> | 6170 |
| 6171 <br> |
| 6172 |
| 6173 <ul class="list-group"> |
| 6174 <li class="list-group-item"> |
| 6175 <a href="{{io.isolate.relativeHashLink('io/file/randomaccessfiles')}}"
>Random Access Files</a> |
| 6176 </li> |
| 6177 </ul> |
| 6178 |
| 6179 <br> |
| 6180 |
| 6181 <ul class="list-group"> |
| 6182 <li class="list-group-item"> |
| 6183 <a href="{{io.isolate.relativeHashLink('io/processes')}}">Processess</
a> |
| 6184 </li> |
| 6185 </ul> |
| 6186 |
| 6070 </div> | 6187 </div> |
| 6071 <br> | 6188 <br> |
| 6072 <hr> | 6189 <hr> |
| 6073 </template> | 6190 </template> |
| 6074 </polymer-element> | 6191 </polymer-element> |
| 6075 | 6192 |
| 6076 <polymer-element name="io-socket-ref" extends="service-ref"> | 6193 <polymer-element name="io-ref" extends="service-ref"> |
| 6077 <template> | 6194 <template> |
| 6078 <style> | 6195 <style> |
| 6079 /* Global styles */ | 6196 /* Global styles */ |
| 6080 * { | 6197 * { |
| 6081 margin: 0; | 6198 margin: 0; |
| 6082 padding: 0; | 6199 padding: 0; |
| 6083 font: 400 14px 'Montserrat', sans-serif; | 6200 font: 400 14px 'Montserrat', sans-serif; |
| 6084 color: #333; | 6201 color: #333; |
| 6085 box-sizing: border-box; | 6202 box-sizing: border-box; |
| 6086 } | 6203 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6126 color: #0489c3; | 6243 color: #0489c3; |
| 6127 text-decoration: none; | 6244 text-decoration: none; |
| 6128 } | 6245 } |
| 6129 | 6246 |
| 6130 a:hover { | 6247 a:hover { |
| 6131 text-decoration: underline; | 6248 text-decoration: underline; |
| 6132 } | 6249 } |
| 6133 | 6250 |
| 6134 em { | 6251 em { |
| 6135 color: inherit; | 6252 color: inherit; |
| 6136 font-style:italic; | 6253 font-style: italic; |
| 6254 } |
| 6255 |
| 6256 b { |
| 6257 color: inherit; |
| 6258 font-weight: bold; |
| 6137 } | 6259 } |
| 6138 | 6260 |
| 6139 hr { | 6261 hr { |
| 6140 margin-top: 20px; | 6262 margin-top: 20px; |
| 6141 margin-bottom: 20px; | 6263 margin-bottom: 20px; |
| 6142 border: 0; | 6264 border: 0; |
| 6143 border-top: 1px solid #eee; | 6265 border-top: 1px solid #eee; |
| 6144 height: 0; | 6266 height: 0; |
| 6145 box-sizing: content-box; | 6267 box-sizing: content-box; |
| 6146 } | 6268 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6299 background-color: #f5f5f5; | 6421 background-color: #f5f5f5; |
| 6300 border: 1px solid #e3e3e3; | 6422 border: 1px solid #e3e3e3; |
| 6301 border-radius: 4px; | 6423 border-radius: 4px; |
| 6302 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 6424 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 6303 } | 6425 } |
| 6304 | 6426 |
| 6305 .break-wrap { | 6427 .break-wrap { |
| 6306 word-wrap: break-word; | 6428 word-wrap: break-word; |
| 6307 } | 6429 } |
| 6308 </style> | 6430 </style> |
| 6309 <a href="{{ url }}">{{ name }}</a> | 6431 <template if="{{ ref.serviceType == 'Socket' }}"> |
| 6432 <io-socket-ref ref="{{ ref }}"></io-socket-ref> |
| 6433 </template> |
| 6434 <template if="{{ ref.serviceType == 'HttpServer' }}"> |
| 6435 <io-http-server-ref ref="{{ ref }}"></io-http-server-ref> |
| 6436 </template> |
| 6437 <template if="{{ ref.serviceType == 'WebSocket' }}"> |
| 6438 <io-web-socket-ref ref="{{ ref }}"></io-web-socket-ref> |
| 6439 </template> |
| 6310 </template> | 6440 </template> |
| 6311 </polymer-element> | 6441 </polymer-element> |
| 6312 | 6442 |
| 6313 <polymer-element name="io-socket-list-view" extends="observatory-element"> | 6443 <polymer-element name="io-http-server-list-view" extends="observatory-element"> |
| 6314 <template> | 6444 <template> |
| 6315 <style> | 6445 <style> |
| 6316 /* Global styles */ | 6446 /* Global styles */ |
| 6317 * { | 6447 * { |
| 6318 margin: 0; | 6448 margin: 0; |
| 6319 padding: 0; | 6449 padding: 0; |
| 6320 font: 400 14px 'Montserrat', sans-serif; | 6450 font: 400 14px 'Montserrat', sans-serif; |
| 6321 color: #333; | 6451 color: #333; |
| 6322 box-sizing: border-box; | 6452 box-sizing: border-box; |
| 6323 } | 6453 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6363 color: #0489c3; | 6493 color: #0489c3; |
| 6364 text-decoration: none; | 6494 text-decoration: none; |
| 6365 } | 6495 } |
| 6366 | 6496 |
| 6367 a:hover { | 6497 a:hover { |
| 6368 text-decoration: underline; | 6498 text-decoration: underline; |
| 6369 } | 6499 } |
| 6370 | 6500 |
| 6371 em { | 6501 em { |
| 6372 color: inherit; | 6502 color: inherit; |
| 6373 font-style:italic; | 6503 font-style: italic; |
| 6504 } |
| 6505 |
| 6506 b { |
| 6507 color: inherit; |
| 6508 font-weight: bold; |
| 6374 } | 6509 } |
| 6375 | 6510 |
| 6376 hr { | 6511 hr { |
| 6377 margin-top: 20px; | 6512 margin-top: 20px; |
| 6378 margin-bottom: 20px; | 6513 margin-bottom: 20px; |
| 6379 border: 0; | 6514 border: 0; |
| 6380 border-top: 1px solid #eee; | 6515 border-top: 1px solid #eee; |
| 6381 height: 0; | 6516 height: 0; |
| 6382 box-sizing: content-box; | 6517 box-sizing: content-box; |
| 6383 } | 6518 } |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6543 word-wrap: break-word; | 6678 word-wrap: break-word; |
| 6544 } | 6679 } |
| 6545 </style> | 6680 </style> |
| 6546 | 6681 |
| 6547 <nav-bar> | 6682 <nav-bar> |
| 6548 <top-nav-menu last="{{ true }}"></top-nav-menu> | 6683 <top-nav-menu last="{{ true }}"></top-nav-menu> |
| 6549 <nav-refresh callback="{{ refresh }}"></nav-refresh> | 6684 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 6550 </nav-bar> | 6685 </nav-bar> |
| 6551 | 6686 |
| 6552 <div class="content"> | 6687 <div class="content"> |
| 6553 <h1>Sockets</h1> | 6688 <h1>HttpServers</h1> |
| 6554 | 6689 |
| 6555 <br> | 6690 <br> |
| 6556 | 6691 |
| 6557 <ul class="list-group"> | 6692 <ul class="list-group"> |
| 6558 <template repeat="{{ socket in list['members'] }}"> | 6693 <template repeat="{{ httpServer in list['members'] }}"> |
| 6559 <li class="list-group-item"> | 6694 <li class="list-group-item"> |
| 6560 <io-socket-ref ref="{{ socket }}"></io-socket-ref> | 6695 <io-http-server-ref ref="{{ httpServer }}"></io-http-server-ref> |
| 6561 </li> | 6696 </li> |
| 6562 </template> | 6697 </template> |
| 6563 </ul> | 6698 </ul> |
| 6564 </div> | 6699 </div> |
| 6565 <br> | 6700 <br> |
| 6566 <hr> | 6701 <hr> |
| 6567 </template> | 6702 </template> |
| 6568 </polymer-element> | 6703 </polymer-element> |
| 6569 | 6704 |
| 6570 <polymer-element name="io-socket-view" extends="observatory-element"> | 6705 <polymer-element name="io-http-server-ref" extends="service-ref"> |
| 6571 <template> | 6706 <template> |
| 6572 <style> | 6707 <style> |
| 6573 /* Global styles */ | 6708 /* Global styles */ |
| 6574 * { | 6709 * { |
| 6575 margin: 0; | 6710 margin: 0; |
| 6576 padding: 0; | 6711 padding: 0; |
| 6577 font: 400 14px 'Montserrat', sans-serif; | 6712 font: 400 14px 'Montserrat', sans-serif; |
| 6578 color: #333; | 6713 color: #333; |
| 6579 box-sizing: border-box; | 6714 box-sizing: border-box; |
| 6580 } | 6715 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6620 color: #0489c3; | 6755 color: #0489c3; |
| 6621 text-decoration: none; | 6756 text-decoration: none; |
| 6622 } | 6757 } |
| 6623 | 6758 |
| 6624 a:hover { | 6759 a:hover { |
| 6625 text-decoration: underline; | 6760 text-decoration: underline; |
| 6626 } | 6761 } |
| 6627 | 6762 |
| 6628 em { | 6763 em { |
| 6629 color: inherit; | 6764 color: inherit; |
| 6630 font-style:italic; | 6765 font-style: italic; |
| 6766 } |
| 6767 |
| 6768 b { |
| 6769 color: inherit; |
| 6770 font-weight: bold; |
| 6631 } | 6771 } |
| 6632 | 6772 |
| 6633 hr { | 6773 hr { |
| 6634 margin-top: 20px; | 6774 margin-top: 20px; |
| 6635 margin-bottom: 20px; | 6775 margin-bottom: 20px; |
| 6636 border: 0; | 6776 border: 0; |
| 6637 border-top: 1px solid #eee; | 6777 border-top: 1px solid #eee; |
| 6638 height: 0; | 6778 height: 0; |
| 6639 box-sizing: content-box; | 6779 box-sizing: content-box; |
| 6640 } | 6780 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6793 background-color: #f5f5f5; | 6933 background-color: #f5f5f5; |
| 6794 border: 1px solid #e3e3e3; | 6934 border: 1px solid #e3e3e3; |
| 6795 border-radius: 4px; | 6935 border-radius: 4px; |
| 6796 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 6936 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 6797 } | 6937 } |
| 6798 | 6938 |
| 6799 .break-wrap { | 6939 .break-wrap { |
| 6800 word-wrap: break-word; | 6940 word-wrap: break-word; |
| 6801 } | 6941 } |
| 6802 </style> | 6942 </style> |
| 6803 | 6943 <a href="{{ url }}">{{ name }}</a> |
| 6804 <nav-bar> | |
| 6805 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
| 6806 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
| 6807 </nav-bar> | |
| 6808 | |
| 6809 <div class="content"> | |
| 6810 <h1>Socket</h1> | |
| 6811 | |
| 6812 <br> | |
| 6813 | |
| 6814 <div class="memberList"> | |
| 6815 <div class="memberItem"> | |
| 6816 <div class="memberName">Address</div> | |
| 6817 <div class="memberValue">{{ socket['address'] }}</div> | |
| 6818 </div> | |
| 6819 <div class="memberItem"> | |
| 6820 <div class="memberName">Port</div> | |
| 6821 <div class="memberValue">{{ socket['port'] }}</div> | |
| 6822 </div> | |
| 6823 <div class="memberItem"> | |
| 6824 <div class="memberName">File descriptor</div> | |
| 6825 <div class="memberValue">{{ socket['fd'] }}</div> | |
| 6826 </div> | |
| 6827 </div> | |
| 6828 </div> | |
| 6829 <br> | |
| 6830 <hr> | |
| 6831 </template> | 6944 </template> |
| 6832 </polymer-element> | 6945 </polymer-element> |
| 6833 | 6946 |
| 6834 <polymer-element name="io-web-socket-ref" extends="service-ref"> | 6947 <polymer-element name="io-http-server-view" extends="observatory-element"> |
| 6835 <template> | 6948 <template> |
| 6836 <style> | 6949 <style> |
| 6837 /* Global styles */ | 6950 /* Global styles */ |
| 6838 * { | 6951 * { |
| 6839 margin: 0; | 6952 margin: 0; |
| 6840 padding: 0; | 6953 padding: 0; |
| 6841 font: 400 14px 'Montserrat', sans-serif; | 6954 font: 400 14px 'Montserrat', sans-serif; |
| 6842 color: #333; | 6955 color: #333; |
| 6843 box-sizing: border-box; | 6956 box-sizing: border-box; |
| 6844 } | 6957 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6884 color: #0489c3; | 6997 color: #0489c3; |
| 6885 text-decoration: none; | 6998 text-decoration: none; |
| 6886 } | 6999 } |
| 6887 | 7000 |
| 6888 a:hover { | 7001 a:hover { |
| 6889 text-decoration: underline; | 7002 text-decoration: underline; |
| 6890 } | 7003 } |
| 6891 | 7004 |
| 6892 em { | 7005 em { |
| 6893 color: inherit; | 7006 color: inherit; |
| 6894 font-style:italic; | 7007 font-style: italic; |
| 7008 } |
| 7009 |
| 7010 b { |
| 7011 color: inherit; |
| 7012 font-weight: bold; |
| 6895 } | 7013 } |
| 6896 | 7014 |
| 6897 hr { | 7015 hr { |
| 6898 margin-top: 20px; | 7016 margin-top: 20px; |
| 6899 margin-bottom: 20px; | 7017 margin-bottom: 20px; |
| 6900 border: 0; | 7018 border: 0; |
| 6901 border-top: 1px solid #eee; | 7019 border-top: 1px solid #eee; |
| 6902 height: 0; | 7020 height: 0; |
| 6903 box-sizing: content-box; | 7021 box-sizing: content-box; |
| 6904 } | 7022 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7057 background-color: #f5f5f5; | 7175 background-color: #f5f5f5; |
| 7058 border: 1px solid #e3e3e3; | 7176 border: 1px solid #e3e3e3; |
| 7059 border-radius: 4px; | 7177 border-radius: 4px; |
| 7060 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 7178 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 7061 } | 7179 } |
| 7062 | 7180 |
| 7063 .break-wrap { | 7181 .break-wrap { |
| 7064 word-wrap: break-word; | 7182 word-wrap: break-word; |
| 7065 } | 7183 } |
| 7066 </style> | 7184 </style> |
| 7067 <a href="{{ url }}">{{ name }}</a> | 7185 |
| 7186 <nav-bar> |
| 7187 <top-nav-menu last="{{ true }}"></top-nav-menu> |
| 7188 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 7189 </nav-bar> |
| 7190 |
| 7191 <div class="content"> |
| 7192 <h1>HttpServer</h1> |
| 7193 |
| 7194 <br> |
| 7195 |
| 7196 <div class="memberList"> |
| 7197 <div class="memberItem"> |
| 7198 <div class="memberName">Socket</div> |
| 7199 <div class="memberValue"><io-socket-ref ref="{{ httpServer['socket'] }
}"></io-socket-ref></div> |
| 7200 </div> |
| 7201 <div class="memberItem"> |
| 7202 <div class="memberName">Address</div> |
| 7203 <div class="memberValue">{{ httpServer['address'] }}</div> |
| 7204 </div> |
| 7205 <div class="memberItem"> |
| 7206 <div class="memberName">Port</div> |
| 7207 <div class="memberValue">{{ httpServer['port'] }}</div> |
| 7208 </div> |
| 7209 <div class="memberItem"> |
| 7210 <div class="memberName">Active connections</div> |
| 7211 <div class="memberValue">{{ httpServer['active'] }}</div> |
| 7212 </div> |
| 7213 <div class="memberItem"> |
| 7214 <div class="memberName">Idle connections</div> |
| 7215 <div class="memberValue">{{ httpServer['idle'] }}</div> |
| 7216 </div> |
| 7217 </div> |
| 7218 </div> |
| 7219 <br> |
| 7220 <hr> |
| 7068 </template> | 7221 </template> |
| 7069 </polymer-element> | 7222 </polymer-element> |
| 7070 | 7223 |
| 7071 <polymer-element name="io-web-socket-list-view" extends="observatory-element"> | 7224 <polymer-element name="io-socket-ref" extends="service-ref"> |
| 7072 <template> | 7225 <template> |
| 7073 <style> | 7226 <style> |
| 7074 /* Global styles */ | 7227 /* Global styles */ |
| 7075 * { | 7228 * { |
| 7076 margin: 0; | 7229 margin: 0; |
| 7077 padding: 0; | 7230 padding: 0; |
| 7078 font: 400 14px 'Montserrat', sans-serif; | 7231 font: 400 14px 'Montserrat', sans-serif; |
| 7079 color: #333; | 7232 color: #333; |
| 7080 box-sizing: border-box; | 7233 box-sizing: border-box; |
| 7081 } | 7234 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7121 color: #0489c3; | 7274 color: #0489c3; |
| 7122 text-decoration: none; | 7275 text-decoration: none; |
| 7123 } | 7276 } |
| 7124 | 7277 |
| 7125 a:hover { | 7278 a:hover { |
| 7126 text-decoration: underline; | 7279 text-decoration: underline; |
| 7127 } | 7280 } |
| 7128 | 7281 |
| 7129 em { | 7282 em { |
| 7130 color: inherit; | 7283 color: inherit; |
| 7131 font-style:italic; | 7284 font-style: italic; |
| 7285 } |
| 7286 |
| 7287 b { |
| 7288 color: inherit; |
| 7289 font-weight: bold; |
| 7132 } | 7290 } |
| 7133 | 7291 |
| 7134 hr { | 7292 hr { |
| 7135 margin-top: 20px; | 7293 margin-top: 20px; |
| 7136 margin-bottom: 20px; | 7294 margin-bottom: 20px; |
| 7137 border: 0; | 7295 border: 0; |
| 7138 border-top: 1px solid #eee; | 7296 border-top: 1px solid #eee; |
| 7139 height: 0; | 7297 height: 0; |
| 7140 box-sizing: content-box; | 7298 box-sizing: content-box; |
| 7141 } | 7299 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7294 background-color: #f5f5f5; | 7452 background-color: #f5f5f5; |
| 7295 border: 1px solid #e3e3e3; | 7453 border: 1px solid #e3e3e3; |
| 7296 border-radius: 4px; | 7454 border-radius: 4px; |
| 7297 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 7455 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 7298 } | 7456 } |
| 7299 | 7457 |
| 7300 .break-wrap { | 7458 .break-wrap { |
| 7301 word-wrap: break-word; | 7459 word-wrap: break-word; |
| 7302 } | 7460 } |
| 7303 </style> | 7461 </style> |
| 7304 | 7462 <a href="{{ url }}">{{ name }}</a> |
| 7305 <nav-bar> | |
| 7306 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
| 7307 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
| 7308 </nav-bar> | |
| 7309 | |
| 7310 <div class="content"> | |
| 7311 <h1>WebSockets</h1> | |
| 7312 | |
| 7313 <br> | |
| 7314 | |
| 7315 <ul class="list-group"> | |
| 7316 <template repeat="{{ webSocket in list['members'] }}"> | |
| 7317 <li class="list-group-item"> | |
| 7318 <io-web-socket-ref ref="{{ webSocket }}"></io-web-socket-ref> | |
| 7319 </li> | |
| 7320 </template> | |
| 7321 </ul> | |
| 7322 </div> | |
| 7323 <br> | |
| 7324 <hr> | |
| 7325 </template> | 7463 </template> |
| 7326 </polymer-element> | 7464 </polymer-element> |
| 7327 | 7465 |
| 7328 <polymer-element name="io-web-socket-view" extends="observatory-element"> | 7466 <polymer-element name="io-socket-list-view" extends="observatory-element"> |
| 7329 <template> | 7467 <template> |
| 7330 <style> | 7468 <style> |
| 7331 /* Global styles */ | 7469 /* Global styles */ |
| 7332 * { | 7470 * { |
| 7333 margin: 0; | 7471 margin: 0; |
| 7334 padding: 0; | 7472 padding: 0; |
| 7335 font: 400 14px 'Montserrat', sans-serif; | 7473 font: 400 14px 'Montserrat', sans-serif; |
| 7336 color: #333; | 7474 color: #333; |
| 7337 box-sizing: border-box; | 7475 box-sizing: border-box; |
| 7338 } | 7476 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7378 color: #0489c3; | 7516 color: #0489c3; |
| 7379 text-decoration: none; | 7517 text-decoration: none; |
| 7380 } | 7518 } |
| 7381 | 7519 |
| 7382 a:hover { | 7520 a:hover { |
| 7383 text-decoration: underline; | 7521 text-decoration: underline; |
| 7384 } | 7522 } |
| 7385 | 7523 |
| 7386 em { | 7524 em { |
| 7387 color: inherit; | 7525 color: inherit; |
| 7388 font-style:italic; | 7526 font-style: italic; |
| 7527 } |
| 7528 |
| 7529 b { |
| 7530 color: inherit; |
| 7531 font-weight: bold; |
| 7389 } | 7532 } |
| 7390 | 7533 |
| 7391 hr { | 7534 hr { |
| 7392 margin-top: 20px; | 7535 margin-top: 20px; |
| 7393 margin-bottom: 20px; | 7536 margin-bottom: 20px; |
| 7394 border: 0; | 7537 border: 0; |
| 7395 border-top: 1px solid #eee; | 7538 border-top: 1px solid #eee; |
| 7396 height: 0; | 7539 height: 0; |
| 7397 box-sizing: content-box; | 7540 box-sizing: content-box; |
| 7398 } | 7541 } |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7558 word-wrap: break-word; | 7701 word-wrap: break-word; |
| 7559 } | 7702 } |
| 7560 </style> | 7703 </style> |
| 7561 | 7704 |
| 7562 <nav-bar> | 7705 <nav-bar> |
| 7563 <top-nav-menu last="{{ true }}"></top-nav-menu> | 7706 <top-nav-menu last="{{ true }}"></top-nav-menu> |
| 7564 <nav-refresh callback="{{ refresh }}"></nav-refresh> | 7707 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 7565 </nav-bar> | 7708 </nav-bar> |
| 7566 | 7709 |
| 7567 <div class="content"> | 7710 <div class="content"> |
| 7568 <h1>WebSocket</h1> | 7711 <h1>Sockets</h1> |
| 7569 | 7712 |
| 7570 <br> | 7713 <br> |
| 7571 | 7714 |
| 7572 <div class="memberList"> | 7715 <ul class="list-group"> |
| 7573 <div class="memberItem"> | 7716 <template repeat="{{ socket in list['members'] }}"> |
| 7574 <div class="memberName">Socket</div> | 7717 <li class="list-group-item"> |
| 7575 <div class="memberValue"><io-socket-ref ref="{{ webSocket['socket'] }}
"></io-socket-ref></div> | 7718 <io-socket-ref ref="{{ socket }}"></io-socket-ref> |
| 7576 </div> | 7719 </li> |
| 7577 </div> | 7720 </template> |
| 7721 </ul> |
| 7578 </div> | 7722 </div> |
| 7579 <br> | 7723 <br> |
| 7580 <hr> | 7724 <hr> |
| 7581 </template> | 7725 </template> |
| 7582 </polymer-element> | 7726 </polymer-element> |
| 7583 | 7727 |
| 7584 <polymer-element name="io-random-access-file-ref" extends="service-ref"> | 7728 <polymer-element name="io-socket-view" extends="observatory-element"> |
| 7585 <template> | 7729 <template> |
| 7586 <style> | 7730 <style> |
| 7587 /* Global styles */ | 7731 /* Global styles */ |
| 7588 * { | 7732 * { |
| 7589 margin: 0; | 7733 margin: 0; |
| 7590 padding: 0; | 7734 padding: 0; |
| 7591 font: 400 14px 'Montserrat', sans-serif; | 7735 font: 400 14px 'Montserrat', sans-serif; |
| 7592 color: #333; | 7736 color: #333; |
| 7593 box-sizing: border-box; | 7737 box-sizing: border-box; |
| 7594 } | 7738 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7634 color: #0489c3; | 7778 color: #0489c3; |
| 7635 text-decoration: none; | 7779 text-decoration: none; |
| 7636 } | 7780 } |
| 7637 | 7781 |
| 7638 a:hover { | 7782 a:hover { |
| 7639 text-decoration: underline; | 7783 text-decoration: underline; |
| 7640 } | 7784 } |
| 7641 | 7785 |
| 7642 em { | 7786 em { |
| 7643 color: inherit; | 7787 color: inherit; |
| 7644 font-style:italic; | 7788 font-style: italic; |
| 7789 } |
| 7790 |
| 7791 b { |
| 7792 color: inherit; |
| 7793 font-weight: bold; |
| 7645 } | 7794 } |
| 7646 | 7795 |
| 7647 hr { | 7796 hr { |
| 7648 margin-top: 20px; | 7797 margin-top: 20px; |
| 7649 margin-bottom: 20px; | 7798 margin-bottom: 20px; |
| 7650 border: 0; | 7799 border: 0; |
| 7651 border-top: 1px solid #eee; | 7800 border-top: 1px solid #eee; |
| 7652 height: 0; | 7801 height: 0; |
| 7653 box-sizing: content-box; | 7802 box-sizing: content-box; |
| 7654 } | 7803 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7807 background-color: #f5f5f5; | 7956 background-color: #f5f5f5; |
| 7808 border: 1px solid #e3e3e3; | 7957 border: 1px solid #e3e3e3; |
| 7809 border-radius: 4px; | 7958 border-radius: 4px; |
| 7810 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 7959 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 7811 } | 7960 } |
| 7812 | 7961 |
| 7813 .break-wrap { | 7962 .break-wrap { |
| 7814 word-wrap: break-word; | 7963 word-wrap: break-word; |
| 7815 } | 7964 } |
| 7816 </style> | 7965 </style> |
| 7817 <a href="{{ url }}">{{ name }}</a> | 7966 |
| 7967 <nav-bar> |
| 7968 <top-nav-menu last="{{ true }}"></top-nav-menu> |
| 7969 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 7970 </nav-bar> |
| 7971 |
| 7972 <div class="content"> |
| 7973 <h1>Socket</h1> |
| 7974 |
| 7975 <br> |
| 7976 |
| 7977 <div class="memberList"> |
| 7978 <template if="{{ socket['owner'] != null }}"> |
| 7979 <div class="memberItem"> |
| 7980 <div class="memberName">Owner</div> |
| 7981 <div class="memberValue"><io-ref ref="{{ socket['owner'] }}"></io-re
f></div> |
| 7982 </div> |
| 7983 </template> |
| 7984 <div class="memberItem"> |
| 7985 <div class="memberName">Address</div> |
| 7986 <div class="memberValue">{{ socket['address'] }}</div> |
| 7987 </div> |
| 7988 <div class="memberItem"> |
| 7989 <div class="memberName">Port</div> |
| 7990 <div class="memberValue">{{ socket['port'] }}</div> |
| 7991 </div> |
| 7992 <div class="memberItem"> |
| 7993 <div class="memberName">File descriptor</div> |
| 7994 <div class="memberValue">{{ socket['fd'] }}</div> |
| 7995 </div> |
| 7996 </div> |
| 7997 </div> |
| 7998 <br> |
| 7999 <hr> |
| 7818 </template> | 8000 </template> |
| 7819 </polymer-element> | 8001 </polymer-element> |
| 7820 | 8002 |
| 7821 <polymer-element name="io-random-access-file-list-view" extends="observatory-ele
ment"> | 8003 <polymer-element name="io-web-socket-ref" extends="service-ref"> |
| 7822 <template> | 8004 <template> |
| 7823 <style> | 8005 <style> |
| 7824 /* Global styles */ | 8006 /* Global styles */ |
| 7825 * { | 8007 * { |
| 7826 margin: 0; | 8008 margin: 0; |
| 7827 padding: 0; | 8009 padding: 0; |
| 7828 font: 400 14px 'Montserrat', sans-serif; | 8010 font: 400 14px 'Montserrat', sans-serif; |
| 7829 color: #333; | 8011 color: #333; |
| 7830 box-sizing: border-box; | 8012 box-sizing: border-box; |
| 7831 } | 8013 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7871 color: #0489c3; | 8053 color: #0489c3; |
| 7872 text-decoration: none; | 8054 text-decoration: none; |
| 7873 } | 8055 } |
| 7874 | 8056 |
| 7875 a:hover { | 8057 a:hover { |
| 7876 text-decoration: underline; | 8058 text-decoration: underline; |
| 7877 } | 8059 } |
| 7878 | 8060 |
| 7879 em { | 8061 em { |
| 7880 color: inherit; | 8062 color: inherit; |
| 7881 font-style:italic; | 8063 font-style: italic; |
| 8064 } |
| 8065 |
| 8066 b { |
| 8067 color: inherit; |
| 8068 font-weight: bold; |
| 7882 } | 8069 } |
| 7883 | 8070 |
| 7884 hr { | 8071 hr { |
| 7885 margin-top: 20px; | 8072 margin-top: 20px; |
| 7886 margin-bottom: 20px; | 8073 margin-bottom: 20px; |
| 7887 border: 0; | 8074 border: 0; |
| 7888 border-top: 1px solid #eee; | 8075 border-top: 1px solid #eee; |
| 7889 height: 0; | 8076 height: 0; |
| 7890 box-sizing: content-box; | 8077 box-sizing: content-box; |
| 7891 } | 8078 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8044 background-color: #f5f5f5; | 8231 background-color: #f5f5f5; |
| 8045 border: 1px solid #e3e3e3; | 8232 border: 1px solid #e3e3e3; |
| 8046 border-radius: 4px; | 8233 border-radius: 4px; |
| 8047 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 8234 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 8048 } | 8235 } |
| 8049 | 8236 |
| 8050 .break-wrap { | 8237 .break-wrap { |
| 8051 word-wrap: break-word; | 8238 word-wrap: break-word; |
| 8052 } | 8239 } |
| 8053 </style> | 8240 </style> |
| 8054 | 8241 <a href="{{ url }}">{{ name }}</a> |
| 8055 <nav-bar> | |
| 8056 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
| 8057 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
| 8058 </nav-bar> | |
| 8059 | |
| 8060 <div class="content"> | |
| 8061 <h1>Random Access Files</h1> | |
| 8062 | |
| 8063 <br> | |
| 8064 | |
| 8065 <ul class="list-group"> | |
| 8066 <template repeat="{{ file in list['members'] }}"> | |
| 8067 <li class="list-group-item"> | |
| 8068 <io-random-access-file-ref ref="{{ file }}"></io-random-access-file-
ref> | |
| 8069 </li> | |
| 8070 </template> | |
| 8071 </ul> | |
| 8072 </div> | |
| 8073 <br> | |
| 8074 <hr> | |
| 8075 </template> | 8242 </template> |
| 8076 </polymer-element> | 8243 </polymer-element> |
| 8077 | 8244 |
| 8078 <polymer-element name="io-random-access-file-view" extends="observatory-element"
> | 8245 <polymer-element name="io-web-socket-list-view" extends="observatory-element"> |
| 8079 <template> | 8246 <template> |
| 8080 <style> | 8247 <style> |
| 8081 /* Global styles */ | 8248 /* Global styles */ |
| 8082 * { | 8249 * { |
| 8083 margin: 0; | 8250 margin: 0; |
| 8084 padding: 0; | 8251 padding: 0; |
| 8085 font: 400 14px 'Montserrat', sans-serif; | 8252 font: 400 14px 'Montserrat', sans-serif; |
| 8086 color: #333; | 8253 color: #333; |
| 8087 box-sizing: border-box; | 8254 box-sizing: border-box; |
| 8088 } | 8255 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8128 color: #0489c3; | 8295 color: #0489c3; |
| 8129 text-decoration: none; | 8296 text-decoration: none; |
| 8130 } | 8297 } |
| 8131 | 8298 |
| 8132 a:hover { | 8299 a:hover { |
| 8133 text-decoration: underline; | 8300 text-decoration: underline; |
| 8134 } | 8301 } |
| 8135 | 8302 |
| 8136 em { | 8303 em { |
| 8137 color: inherit; | 8304 color: inherit; |
| 8138 font-style:italic; | 8305 font-style: italic; |
| 8306 } |
| 8307 |
| 8308 b { |
| 8309 color: inherit; |
| 8310 font-weight: bold; |
| 8139 } | 8311 } |
| 8140 | 8312 |
| 8141 hr { | 8313 hr { |
| 8142 margin-top: 20px; | 8314 margin-top: 20px; |
| 8143 margin-bottom: 20px; | 8315 margin-bottom: 20px; |
| 8144 border: 0; | 8316 border: 0; |
| 8145 border-top: 1px solid #eee; | 8317 border-top: 1px solid #eee; |
| 8146 height: 0; | 8318 height: 0; |
| 8147 box-sizing: content-box; | 8319 box-sizing: content-box; |
| 8148 } | 8320 } |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8308 word-wrap: break-word; | 8480 word-wrap: break-word; |
| 8309 } | 8481 } |
| 8310 </style> | 8482 </style> |
| 8311 | 8483 |
| 8312 <nav-bar> | 8484 <nav-bar> |
| 8313 <top-nav-menu last="{{ true }}"></top-nav-menu> | 8485 <top-nav-menu last="{{ true }}"></top-nav-menu> |
| 8314 <nav-refresh callback="{{ refresh }}"></nav-refresh> | 8486 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 8315 </nav-bar> | 8487 </nav-bar> |
| 8316 | 8488 |
| 8317 <div class="content"> | 8489 <div class="content"> |
| 8318 <h1>Random Access File</h1> | 8490 <h1>WebSockets</h1> |
| 8319 | 8491 |
| 8320 <br> | 8492 <br> |
| 8321 | 8493 |
| 8322 <div class="memberList"> | 8494 <ul class="list-group"> |
| 8323 <div class="memberItem"> | 8495 <template repeat="{{ webSocket in list['members'] }}"> |
| 8324 <div class="memberName">Path</div> | 8496 <li class="list-group-item"> |
| 8325 <div class="memberValue">{{ file['name'] }}</div> | 8497 <io-web-socket-ref ref="{{ webSocket }}"></io-web-socket-ref> |
| 8326 </div> | 8498 </li> |
| 8327 <div class="memberItem"> | 8499 </template> |
| 8328 <div class="memberName">Pending Operation</div> | 8500 </ul> |
| 8329 <div class="memberValue">{{ file['asyncDispatched'] }}</div> | |
| 8330 </div> | |
| 8331 <div class="memberItem"> | |
| 8332 <div class="memberName">File Descriptor</div> | |
| 8333 <div class="memberValue">{{ file['fd'] }}</div> | |
| 8334 </div> | |
| 8335 </div> | |
| 8336 </div> | 8501 </div> |
| 8337 <br> | 8502 <br> |
| 8338 <hr> | 8503 <hr> |
| 8339 </template> | 8504 </template> |
| 8340 </polymer-element> | 8505 </polymer-element> |
| 8341 | 8506 |
| 8342 <polymer-element name="io-process-list-view" extends="observatory-element"> | 8507 <polymer-element name="io-web-socket-view" extends="observatory-element"> |
| 8343 <template> | 8508 <template> |
| 8344 <style> | 8509 <style> |
| 8345 /* Global styles */ | 8510 /* Global styles */ |
| 8346 * { | 8511 * { |
| 8347 margin: 0; | 8512 margin: 0; |
| 8348 padding: 0; | 8513 padding: 0; |
| 8349 font: 400 14px 'Montserrat', sans-serif; | 8514 font: 400 14px 'Montserrat', sans-serif; |
| 8350 color: #333; | 8515 color: #333; |
| 8351 box-sizing: border-box; | 8516 box-sizing: border-box; |
| 8352 } | 8517 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8392 color: #0489c3; | 8557 color: #0489c3; |
| 8393 text-decoration: none; | 8558 text-decoration: none; |
| 8394 } | 8559 } |
| 8395 | 8560 |
| 8396 a:hover { | 8561 a:hover { |
| 8397 text-decoration: underline; | 8562 text-decoration: underline; |
| 8398 } | 8563 } |
| 8399 | 8564 |
| 8400 em { | 8565 em { |
| 8401 color: inherit; | 8566 color: inherit; |
| 8402 font-style:italic; | 8567 font-style: italic; |
| 8568 } |
| 8569 |
| 8570 b { |
| 8571 color: inherit; |
| 8572 font-weight: bold; |
| 8403 } | 8573 } |
| 8404 | 8574 |
| 8405 hr { | 8575 hr { |
| 8406 margin-top: 20px; | 8576 margin-top: 20px; |
| 8407 margin-bottom: 20px; | 8577 margin-bottom: 20px; |
| 8408 border: 0; | 8578 border: 0; |
| 8409 border-top: 1px solid #eee; | 8579 border-top: 1px solid #eee; |
| 8410 height: 0; | 8580 height: 0; |
| 8411 box-sizing: content-box; | 8581 box-sizing: content-box; |
| 8412 } | 8582 } |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8572 word-wrap: break-word; | 8742 word-wrap: break-word; |
| 8573 } | 8743 } |
| 8574 </style> | 8744 </style> |
| 8575 | 8745 |
| 8576 <nav-bar> | 8746 <nav-bar> |
| 8577 <top-nav-menu last="{{ true }}"></top-nav-menu> | 8747 <top-nav-menu last="{{ true }}"></top-nav-menu> |
| 8578 <nav-refresh callback="{{ refresh }}"></nav-refresh> | 8748 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 8579 </nav-bar> | 8749 </nav-bar> |
| 8580 | 8750 |
| 8581 <div class="content"> | 8751 <div class="content"> |
| 8582 <h1>Processes</h1> | 8752 <h1>WebSocket</h1> |
| 8583 | 8753 |
| 8584 <br> | 8754 <br> |
| 8585 | 8755 |
| 8586 <ul class="list-group"> | 8756 <div class="memberList"> |
| 8587 <template repeat="{{ process in list['members'] }}"> | 8757 <div class="memberItem"> |
| 8588 <li class="list-group-item"> | 8758 <div class="memberName">Socket</div> |
| 8589 <io-process-ref ref="{{ process }}"></io-process-ref> | 8759 <div class="memberValue"><io-socket-ref ref="{{ webSocket['socket'] }}
"></io-socket-ref></div> |
| 8590 </li> | 8760 </div> |
| 8591 </template> | 8761 </div> |
| 8592 </ul> | |
| 8593 </div> | 8762 </div> |
| 8594 <br> | 8763 <br> |
| 8595 <hr> | 8764 <hr> |
| 8596 </template> | 8765 </template> |
| 8597 </polymer-element> | 8766 </polymer-element> |
| 8598 | 8767 |
| 8599 <polymer-element name="io-process-ref" extends="service-ref"> | 8768 <polymer-element name="io-random-access-file-ref" extends="service-ref"> |
| 8600 <template> | 8769 <template> |
| 8601 <style> | 8770 <style> |
| 8602 /* Global styles */ | 8771 /* Global styles */ |
| 8603 * { | 8772 * { |
| 8604 margin: 0; | 8773 margin: 0; |
| 8605 padding: 0; | 8774 padding: 0; |
| 8606 font: 400 14px 'Montserrat', sans-serif; | 8775 font: 400 14px 'Montserrat', sans-serif; |
| 8607 color: #333; | 8776 color: #333; |
| 8608 box-sizing: border-box; | 8777 box-sizing: border-box; |
| 8609 } | 8778 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8649 color: #0489c3; | 8818 color: #0489c3; |
| 8650 text-decoration: none; | 8819 text-decoration: none; |
| 8651 } | 8820 } |
| 8652 | 8821 |
| 8653 a:hover { | 8822 a:hover { |
| 8654 text-decoration: underline; | 8823 text-decoration: underline; |
| 8655 } | 8824 } |
| 8656 | 8825 |
| 8657 em { | 8826 em { |
| 8658 color: inherit; | 8827 color: inherit; |
| 8659 font-style:italic; | 8828 font-style: italic; |
| 8829 } |
| 8830 |
| 8831 b { |
| 8832 color: inherit; |
| 8833 font-weight: bold; |
| 8660 } | 8834 } |
| 8661 | 8835 |
| 8662 hr { | 8836 hr { |
| 8663 margin-top: 20px; | 8837 margin-top: 20px; |
| 8664 margin-bottom: 20px; | 8838 margin-bottom: 20px; |
| 8665 border: 0; | 8839 border: 0; |
| 8666 border-top: 1px solid #eee; | 8840 border-top: 1px solid #eee; |
| 8667 height: 0; | 8841 height: 0; |
| 8668 box-sizing: content-box; | 8842 box-sizing: content-box; |
| 8669 } | 8843 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8822 background-color: #f5f5f5; | 8996 background-color: #f5f5f5; |
| 8823 border: 1px solid #e3e3e3; | 8997 border: 1px solid #e3e3e3; |
| 8824 border-radius: 4px; | 8998 border-radius: 4px; |
| 8825 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 8999 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 8826 } | 9000 } |
| 8827 | 9001 |
| 8828 .break-wrap { | 9002 .break-wrap { |
| 8829 word-wrap: break-word; | 9003 word-wrap: break-word; |
| 8830 } | 9004 } |
| 8831 </style> | 9005 </style> |
| 8832 <template if="{{ small }}"> | 9006 <a href="{{ url }}">{{ name }}</a> |
| 8833 <a href="{{ url }}">{{ name }}</a> | |
| 8834 </template> | |
| 8835 <template if="{{ !small }}"> | |
| 8836 <a href="{{ url }}">({{ ref['pid'] }}) {{ name }} {{ ref['arguments'] }}</
a> | |
| 8837 </template> | |
| 8838 </template> | 9007 </template> |
| 8839 </polymer-element> | 9008 </polymer-element> |
| 8840 | 9009 |
| 8841 <polymer-element name="io-process-view" extends="observatory-element"> | 9010 <polymer-element name="io-random-access-file-list-view" extends="observatory-ele
ment"> |
| 8842 <template> | 9011 <template> |
| 8843 <style> | 9012 <style> |
| 8844 /* Global styles */ | 9013 /* Global styles */ |
| 8845 * { | 9014 * { |
| 8846 margin: 0; | 9015 margin: 0; |
| 8847 padding: 0; | 9016 padding: 0; |
| 8848 font: 400 14px 'Montserrat', sans-serif; | 9017 font: 400 14px 'Montserrat', sans-serif; |
| 8849 color: #333; | 9018 color: #333; |
| 8850 box-sizing: border-box; | 9019 box-sizing: border-box; |
| 8851 } | 9020 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8891 color: #0489c3; | 9060 color: #0489c3; |
| 8892 text-decoration: none; | 9061 text-decoration: none; |
| 8893 } | 9062 } |
| 8894 | 9063 |
| 8895 a:hover { | 9064 a:hover { |
| 8896 text-decoration: underline; | 9065 text-decoration: underline; |
| 8897 } | 9066 } |
| 8898 | 9067 |
| 8899 em { | 9068 em { |
| 8900 color: inherit; | 9069 color: inherit; |
| 8901 font-style:italic; | 9070 font-style: italic; |
| 9071 } |
| 9072 |
| 9073 b { |
| 9074 color: inherit; |
| 9075 font-weight: bold; |
| 8902 } | 9076 } |
| 8903 | 9077 |
| 8904 hr { | 9078 hr { |
| 8905 margin-top: 20px; | 9079 margin-top: 20px; |
| 8906 margin-bottom: 20px; | 9080 margin-bottom: 20px; |
| 8907 border: 0; | 9081 border: 0; |
| 8908 border-top: 1px solid #eee; | 9082 border-top: 1px solid #eee; |
| 8909 height: 0; | 9083 height: 0; |
| 8910 box-sizing: content-box; | 9084 box-sizing: content-box; |
| 8911 } | 9085 } |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9071 word-wrap: break-word; | 9245 word-wrap: break-word; |
| 9072 } | 9246 } |
| 9073 </style> | 9247 </style> |
| 9074 | 9248 |
| 9075 <nav-bar> | 9249 <nav-bar> |
| 9076 <top-nav-menu last="{{ true }}"></top-nav-menu> | 9250 <top-nav-menu last="{{ true }}"></top-nav-menu> |
| 9077 <nav-refresh callback="{{ refresh }}"></nav-refresh> | 9251 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 9078 </nav-bar> | 9252 </nav-bar> |
| 9079 | 9253 |
| 9080 <div class="content"> | 9254 <div class="content"> |
| 9081 <h1>Process</h1> | 9255 <h1>Random Access Files</h1> |
| 9082 | 9256 |
| 9083 <br> | 9257 <br> |
| 9084 | 9258 |
| 9085 <div class="memberList"> | 9259 <ul class="list-group"> |
| 9086 <div class="memberItem"> | 9260 <template repeat="{{ file in list['members'] }}"> |
| 9087 <div class="memberName">Path</div> | 9261 <li class="list-group-item"> |
| 9088 <div class="memberValue">{{ process['name'] }}</div> | 9262 <io-random-access-file-ref ref="{{ file }}"></io-random-access-file-
ref> |
| 9089 </div> | 9263 </li> |
| 9090 <div class="memberItem"> | 9264 </template> |
| 9091 <div class="memberName">Pid</div> | 9265 </ul> |
| 9092 <div class="memberValue">{{ process['pid'] }}</div> | |
| 9093 </div> | |
| 9094 <div class="memberItem"> | |
| 9095 <div class="memberName">Arguments</div> | |
| 9096 <div class="memberValue">{{ process['arguments'] }}</div> | |
| 9097 </div> | |
| 9098 <div class="memberItem"> | |
| 9099 <div class="memberName">Started</div> | |
| 9100 <div class="memberValue">{{ process['started'] }}</div> | |
| 9101 </div> | |
| 9102 <div class="memberItem"> | |
| 9103 <div class="memberName">Working Directory</div> | |
| 9104 <div class="memberValue">{{ process['workingDirectory'] }}</div> | |
| 9105 </div> | |
| 9106 </div> | |
| 9107 | |
| 9108 <br> | |
| 9109 | |
| 9110 <h2>Environment</h2> | |
| 9111 <div class="well"> | |
| 9112 <div class="monospace break-wrap"> | |
| 9113 <template repeat="{{ variable in process['environment'] }}"> | |
| 9114 {{ variable }} | |
| 9115 <br> | |
| 9116 </template> | |
| 9117 </div> | |
| 9118 </div> | |
| 9119 </div> | 9266 </div> |
| 9120 <br> | 9267 <br> |
| 9121 <hr> | 9268 <hr> |
| 9122 </template> | 9269 </template> |
| 9123 </polymer-element> | 9270 </polymer-element> |
| 9124 | 9271 |
| 9125 | 9272 <polymer-element name="io-random-access-file-view" extends="observatory-element"
> |
| 9126 | 9273 <template> |
| 9127 | 9274 <style> |
| 9128 <polymer-element name="isolate-ref" extends="service-ref"> | |
| 9129 <template><style> | |
| 9130 /* Global styles */ | 9275 /* Global styles */ |
| 9131 * { | 9276 * { |
| 9132 margin: 0; | 9277 margin: 0; |
| 9133 padding: 0; | 9278 padding: 0; |
| 9134 font: 400 14px 'Montserrat', sans-serif; | 9279 font: 400 14px 'Montserrat', sans-serif; |
| 9135 color: #333; | 9280 color: #333; |
| 9136 box-sizing: border-box; | 9281 box-sizing: border-box; |
| 9137 } | 9282 } |
| 9138 | 9283 |
| 9139 .content { | 9284 .content { |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9177 color: #0489c3; | 9322 color: #0489c3; |
| 9178 text-decoration: none; | 9323 text-decoration: none; |
| 9179 } | 9324 } |
| 9180 | 9325 |
| 9181 a:hover { | 9326 a:hover { |
| 9182 text-decoration: underline; | 9327 text-decoration: underline; |
| 9183 } | 9328 } |
| 9184 | 9329 |
| 9185 em { | 9330 em { |
| 9186 color: inherit; | 9331 color: inherit; |
| 9187 font-style:italic; | 9332 font-style: italic; |
| 9333 } |
| 9334 |
| 9335 b { |
| 9336 color: inherit; |
| 9337 font-weight: bold; |
| 9188 } | 9338 } |
| 9189 | 9339 |
| 9190 hr { | 9340 hr { |
| 9191 margin-top: 20px; | 9341 margin-top: 20px; |
| 9192 margin-bottom: 20px; | 9342 margin-bottom: 20px; |
| 9193 border: 0; | 9343 border: 0; |
| 9194 border-top: 1px solid #eee; | 9344 border-top: 1px solid #eee; |
| 9195 height: 0; | 9345 height: 0; |
| 9196 box-sizing: content-box; | 9346 box-sizing: content-box; |
| 9197 } | 9347 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9350 background-color: #f5f5f5; | 9500 background-color: #f5f5f5; |
| 9351 border: 1px solid #e3e3e3; | 9501 border: 1px solid #e3e3e3; |
| 9352 border-radius: 4px; | 9502 border-radius: 4px; |
| 9353 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 9503 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 9354 } | 9504 } |
| 9355 | 9505 |
| 9356 .break-wrap { | 9506 .break-wrap { |
| 9357 word-wrap: break-word; | 9507 word-wrap: break-word; |
| 9358 } | 9508 } |
| 9359 </style> | 9509 </style> |
| 9360 <a href="{{ url }}">{{ ref.name }}</a> | |
| 9361 </template> | |
| 9362 | 9510 |
| 9511 <nav-bar> |
| 9512 <top-nav-menu last="{{ true }}"></top-nav-menu> |
| 9513 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 9514 </nav-bar> |
| 9515 |
| 9516 <div class="content"> |
| 9517 <h1>Random Access File</h1> |
| 9518 |
| 9519 <br> |
| 9520 |
| 9521 <div class="memberList"> |
| 9522 <div class="memberItem"> |
| 9523 <div class="memberName">Path</div> |
| 9524 <div class="memberValue">{{ file['name'] }}</div> |
| 9525 </div> |
| 9526 <div class="memberItem"> |
| 9527 <div class="memberName">Pending Operation</div> |
| 9528 <div class="memberValue">{{ file['asyncDispatched'] }}</div> |
| 9529 </div> |
| 9530 <div class="memberItem"> |
| 9531 <div class="memberName">File Descriptor</div> |
| 9532 <div class="memberValue">{{ file['fd'] }}</div> |
| 9533 </div> |
| 9534 </div> |
| 9535 </div> |
| 9536 <br> |
| 9537 <hr> |
| 9538 </template> |
| 9363 </polymer-element> | 9539 </polymer-element> |
| 9364 | 9540 |
| 9365 | 9541 <polymer-element name="io-process-list-view" extends="observatory-element"> |
| 9366 | |
| 9367 | |
| 9368 | |
| 9369 | |
| 9370 | |
| 9371 <polymer-element name="isolate-summary" extends="observatory-element"> | |
| 9372 <template> | 9542 <template> |
| 9373 <style> | 9543 <style> |
| 9374 /* Global styles */ | 9544 /* Global styles */ |
| 9375 * { | 9545 * { |
| 9376 margin: 0; | 9546 margin: 0; |
| 9377 padding: 0; | 9547 padding: 0; |
| 9378 font: 400 14px 'Montserrat', sans-serif; | 9548 font: 400 14px 'Montserrat', sans-serif; |
| 9379 color: #333; | 9549 color: #333; |
| 9380 box-sizing: border-box; | 9550 box-sizing: border-box; |
| 9381 } | 9551 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9421 color: #0489c3; | 9591 color: #0489c3; |
| 9422 text-decoration: none; | 9592 text-decoration: none; |
| 9423 } | 9593 } |
| 9424 | 9594 |
| 9425 a:hover { | 9595 a:hover { |
| 9426 text-decoration: underline; | 9596 text-decoration: underline; |
| 9427 } | 9597 } |
| 9428 | 9598 |
| 9429 em { | 9599 em { |
| 9430 color: inherit; | 9600 color: inherit; |
| 9431 font-style:italic; | 9601 font-style: italic; |
| 9602 } |
| 9603 |
| 9604 b { |
| 9605 color: inherit; |
| 9606 font-weight: bold; |
| 9432 } | 9607 } |
| 9433 | 9608 |
| 9434 hr { | 9609 hr { |
| 9435 margin-top: 20px; | 9610 margin-top: 20px; |
| 9436 margin-bottom: 20px; | 9611 margin-bottom: 20px; |
| 9437 border: 0; | 9612 border: 0; |
| 9438 border-top: 1px solid #eee; | 9613 border-top: 1px solid #eee; |
| 9439 height: 0; | 9614 height: 0; |
| 9440 box-sizing: content-box; | 9615 box-sizing: content-box; |
| 9441 } | 9616 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9594 background-color: #f5f5f5; | 9769 background-color: #f5f5f5; |
| 9595 border: 1px solid #e3e3e3; | 9770 border: 1px solid #e3e3e3; |
| 9596 border-radius: 4px; | 9771 border-radius: 4px; |
| 9597 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 9772 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 9598 } | 9773 } |
| 9599 | 9774 |
| 9600 .break-wrap { | 9775 .break-wrap { |
| 9601 word-wrap: break-word; | 9776 word-wrap: break-word; |
| 9602 } | 9777 } |
| 9603 </style> | 9778 </style> |
| 9604 <div class="flex-row"> | 9779 |
| 9605 <div class="flex-item-10-percent"> | 9780 <nav-bar> |
| 9606 <img src="packages/observatory/src/elements/img/isolate_icon.png"> | 9781 <top-nav-menu last="{{ true }}"></top-nav-menu> |
| 9607 </div> | 9782 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 9608 <div class="flex-item-10-percent"> | 9783 </nav-bar> |
| 9609 <isolate-ref ref="{{ isolate }}"></isolate-ref> | 9784 |
| 9610 </div> | 9785 <div class="content"> |
| 9611 <div class="flex-item-20-percent"> | 9786 <h1>Processes</h1> |
| 9612 <isolate-run-state isolate="{{ isolate }}"></isolate-run-state> | 9787 |
| 9613 </div> | 9788 <br> |
| 9614 <div class="flex-item-50-percent"> | 9789 |
| 9615 <isolate-location isolate="{{ isolate }}"></isolate-location> | 9790 <ul class="list-group"> |
| 9616 </div> | 9791 <template repeat="{{ process in list['members'] }}"> |
| 9617 <div class="flex-item-10-percent"> | 9792 <li class="list-group-item"> |
| 9618 </div> | 9793 <io-process-ref ref="{{ process }}"></io-process-ref> |
| 9794 </li> |
| 9795 </template> |
| 9796 </ul> |
| 9619 </div> | 9797 </div> |
| 9620 | 9798 <br> |
| 9621 <div class="flex-row"> | 9799 <hr> |
| 9622 <div class="flex-item-20-percent"></div> | |
| 9623 <div class="flex-item-60-percent"> | |
| 9624 <hr> | |
| 9625 </div> | |
| 9626 <div class="flex-item-20-percent"></div> | |
| 9627 </div> | |
| 9628 | |
| 9629 <isolate-shared-summary isolate="{{ isolate }}"></isolate-shared-summary> | |
| 9630 | |
| 9631 </template> | 9800 </template> |
| 9632 </polymer-element> | 9801 </polymer-element> |
| 9633 | 9802 |
| 9634 <polymer-element name="isolate-run-state" extends="observatory-element"> | 9803 <polymer-element name="io-process-ref" extends="service-ref"> |
| 9635 <template> | 9804 <template> |
| 9636 <template if="{{ isolate.pauseEvent != null }}"> | |
| 9637 <strong>paused</strong> | |
| 9638 <action-link callback="{{ resume }}" label="resume"></action-link> | |
| 9639 </template> | |
| 9640 | |
| 9641 <template if="{{ isolate.running }}"> | |
| 9642 <strong>running</strong> | |
| 9643 <action-link callback="{{ pause }}" label="pause"></action-link> | |
| 9644 </template> | |
| 9645 | |
| 9646 <template if="{{ isolate.idle }}"> | |
| 9647 <strong>idle</strong> | |
| 9648 </template> | |
| 9649 | |
| 9650 <template if="{{ isolate.loading }}"> | |
| 9651 <strong>loading...</strong> | |
| 9652 </template> | |
| 9653 </template> | |
| 9654 </polymer-element> | |
| 9655 | |
| 9656 <polymer-element name="isolate-location" extends="observatory-element"> | |
| 9657 <template> | |
| 9658 <template if="{{ isolate.pauseEvent != null }}"> | |
| 9659 <template if="{{ isolate.pauseEvent['eventType'] == 'IsolateCreated' }}"> | |
| 9660 at isolate start | |
| 9661 </template> | |
| 9662 <template if="{{ isolate.pauseEvent['eventType'] == 'IsolateShutdown' }}"> | |
| 9663 at isolate exit | |
| 9664 </template> | |
| 9665 <template if="{{ isolate.pauseEvent['eventType'] == 'IsolateInterrupted' }
}"> | |
| 9666 at | |
| 9667 <function-ref ref="{{ isolate.topFrame['function'] }}"> | |
| 9668 </function-ref> | |
| 9669 (<script-ref ref="{{ isolate.topFrame['script'] }}" pos="{{ isolate.topF
rame['tokenPos'] }}"></script-ref>) | |
| 9670 </template> | |
| 9671 <template if="{{ isolate.pauseEvent['eventType'] == 'BreakpointReached' }}
"> | |
| 9672 at breakpoint {{ isolate.pauseEvent['breakpoint']['id'] }} | |
| 9673 <function-ref ref="{{ isolate.topFrame['function'] }}"> | |
| 9674 </function-ref> | |
| 9675 (<script-ref ref="{{ isolate.topFrame['script'] }}" pos="{{ isolate.topF
rame['tokenPos'] }}"></script-ref>) | |
| 9676 </template> | |
| 9677 </template> | |
| 9678 | |
| 9679 <template if="{{ isolate.running }}"> | |
| 9680 at | |
| 9681 <function-ref ref="{{ isolate.topFrame['function'] }}"> | |
| 9682 </function-ref> | |
| 9683 (<script-ref ref="{{ isolate.topFrame['script'] }}" pos="{{ isolate.topFra
me['tokenPos'] }}"></script-ref>) | |
| 9684 </template> | |
| 9685 | |
| 9686 </template> | |
| 9687 </polymer-element> | |
| 9688 | |
| 9689 <polymer-element name="isolate-shared-summary" extends="observatory-element"> | |
| 9690 <template> | |
| 9691 <style> | |
| 9692 .errorBox { | |
| 9693 background-color: #f5f5f5; | |
| 9694 border: 1px solid #ccc; | |
| 9695 padding: 10px; | |
| 9696 font-family: consolas, courier, monospace; | |
| 9697 font-size: 1em; | |
| 9698 line-height: 1.2em; | |
| 9699 white-space: pre; | |
| 9700 } | |
| 9701 </style> | |
| 9702 <style> | 9805 <style> |
| 9703 /* Global styles */ | 9806 /* Global styles */ |
| 9704 * { | 9807 * { |
| 9705 margin: 0; | 9808 margin: 0; |
| 9706 padding: 0; | 9809 padding: 0; |
| 9707 font: 400 14px 'Montserrat', sans-serif; | 9810 font: 400 14px 'Montserrat', sans-serif; |
| 9708 color: #333; | 9811 color: #333; |
| 9709 box-sizing: border-box; | 9812 box-sizing: border-box; |
| 9710 } | 9813 } |
| 9711 | 9814 |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9750 color: #0489c3; | 9853 color: #0489c3; |
| 9751 text-decoration: none; | 9854 text-decoration: none; |
| 9752 } | 9855 } |
| 9753 | 9856 |
| 9754 a:hover { | 9857 a:hover { |
| 9755 text-decoration: underline; | 9858 text-decoration: underline; |
| 9756 } | 9859 } |
| 9757 | 9860 |
| 9758 em { | 9861 em { |
| 9759 color: inherit; | 9862 color: inherit; |
| 9760 font-style:italic; | 9863 font-style: italic; |
| 9864 } |
| 9865 |
| 9866 b { |
| 9867 color: inherit; |
| 9868 font-weight: bold; |
| 9761 } | 9869 } |
| 9762 | 9870 |
| 9763 hr { | 9871 hr { |
| 9764 margin-top: 20px; | 9872 margin-top: 20px; |
| 9765 margin-bottom: 20px; | 9873 margin-bottom: 20px; |
| 9766 border: 0; | 9874 border: 0; |
| 9767 border-top: 1px solid #eee; | 9875 border-top: 1px solid #eee; |
| 9768 height: 0; | 9876 height: 0; |
| 9769 box-sizing: content-box; | 9877 box-sizing: content-box; |
| 9770 } | 9878 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9923 background-color: #f5f5f5; | 10031 background-color: #f5f5f5; |
| 9924 border: 1px solid #e3e3e3; | 10032 border: 1px solid #e3e3e3; |
| 9925 border-radius: 4px; | 10033 border-radius: 4px; |
| 9926 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 10034 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 9927 } | 10035 } |
| 9928 | 10036 |
| 9929 .break-wrap { | 10037 .break-wrap { |
| 9930 word-wrap: break-word; | 10038 word-wrap: break-word; |
| 9931 } | 10039 } |
| 9932 </style> | 10040 </style> |
| 9933 <template if="{{ isolate.error != null }}"> | 10041 <template if="{{ small }}"> |
| 9934 <div class="content-centered"> | 10042 <a href="{{ url }}">{{ name }}</a> |
| 9935 <pre class="errorBox">{{ isolate.error.message }}</pre> | |
| 9936 <br> | |
| 9937 </div> | |
| 9938 </template> | 10043 </template> |
| 9939 <div class="flex-row"> | 10044 <template if="{{ !small }}"> |
| 9940 <div class="flex-item-10-percent"> | 10045 <a href="{{ url }}">({{ ref['pid'] }}) {{ name }} {{ ref['arguments'] }}</
a> |
| 9941 </div> | 10046 </template> |
| 9942 <div class="flex-item-40-percent"> | |
| 9943 <isolate-counter-chart counters="{{ isolate.counters }}"></isolate-count
er-chart> | |
| 9944 </div> | |
| 9945 <div class="flex-item-40-percent"> | |
| 9946 <div class="memberList"> | |
| 9947 <div class="memberItem"> | |
| 9948 <div class="memberName">new heap</div> | |
| 9949 <div class="memberValue"> | |
| 9950 {{ isolate.newHeapUsed | formatSize }} | |
| 9951 of | |
| 9952 {{ isolate.newHeapCapacity | formatSize }} | |
| 9953 </div> | |
| 9954 </div> | |
| 9955 <div class="memberItem"> | |
| 9956 <div class="memberName">old heap</div> | |
| 9957 <div class="memberValue"> | |
| 9958 {{ isolate.oldHeapUsed | formatSize }} | |
| 9959 of | |
| 9960 {{ isolate.oldHeapCapacity | formatSize }} | |
| 9961 </div> | |
| 9962 </div> | |
| 9963 </div> | |
| 9964 <br> | |
| 9965 <div class="memberItem"> | |
| 9966 <div class="memberValue"> | |
| 9967 See <a href="{{ isolate.relativeHashLink('stacktrace') }}">stack tra
ce</a> | |
| 9968 </div> | |
| 9969 </div> | |
| 9970 <div class="memberItem"> | |
| 9971 <div class="memberValue"> | |
| 9972 See <a href="{{ isolate.relativeHashLink('profile') }}">cpu profile<
/a> | |
| 9973 </div> | |
| 9974 </div> | |
| 9975 <div class="memberItem"> | |
| 9976 <div class="memberValue"> | |
| 9977 See <a href="{{ isolate.relativeHashLink('allocationprofile') }}">al
location profile</a> | |
| 9978 </div> | |
| 9979 </div> | |
| 9980 <div class="memberItem"> | |
| 9981 <div class="memberValue"> | |
| 9982 See <a href="{{ isolate.relativeHashLink('heapmap') }}">heap map</a> | |
| 9983 </div> | |
| 9984 </div> | |
| 9985 <template if="{{ isolate.ioEnabled }}"> | |
| 9986 <div class="memberItem"> | |
| 9987 <div class="memberValue"> | |
| 9988 See <a href="{{ isolate.relativeHashLink('io') }}">dart:io</a> | |
| 9989 </div> | |
| 9990 </div> | |
| 9991 </template> | |
| 9992 </div> | |
| 9993 <div class="flex-item-10-percent"> | |
| 9994 </div> | |
| 9995 </div> | |
| 9996 </template> | 10047 </template> |
| 9997 </polymer-element> | 10048 </polymer-element> |
| 9998 | 10049 |
| 9999 <polymer-element name="isolate-counter-chart" extends="observatory-element"> | 10050 <polymer-element name="io-process-view" extends="observatory-element"> |
| 10000 <template> | |
| 10001 <div id="counterPieChart" style="height: 200px"></div> | |
| 10002 </template> | |
| 10003 </polymer-element> | |
| 10004 | |
| 10005 | |
| 10006 | |
| 10007 | |
| 10008 | |
| 10009 | |
| 10010 | |
| 10011 | |
| 10012 | |
| 10013 | |
| 10014 | |
| 10015 | |
| 10016 | |
| 10017 <polymer-element name="isolate-view" extends="observatory-element"> | |
| 10018 <template> | 10051 <template> |
| 10019 <style> | 10052 <style> |
| 10020 /* Global styles */ | 10053 /* Global styles */ |
| 10021 * { | 10054 * { |
| 10022 margin: 0; | 10055 margin: 0; |
| 10023 padding: 0; | 10056 padding: 0; |
| 10024 font: 400 14px 'Montserrat', sans-serif; | 10057 font: 400 14px 'Montserrat', sans-serif; |
| 10025 color: #333; | 10058 color: #333; |
| 10026 box-sizing: border-box; | 10059 box-sizing: border-box; |
| 10027 } | 10060 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10067 color: #0489c3; | 10100 color: #0489c3; |
| 10068 text-decoration: none; | 10101 text-decoration: none; |
| 10069 } | 10102 } |
| 10070 | 10103 |
| 10071 a:hover { | 10104 a:hover { |
| 10072 text-decoration: underline; | 10105 text-decoration: underline; |
| 10073 } | 10106 } |
| 10074 | 10107 |
| 10075 em { | 10108 em { |
| 10076 color: inherit; | 10109 color: inherit; |
| 10077 font-style:italic; | 10110 font-style: italic; |
| 10111 } |
| 10112 |
| 10113 b { |
| 10114 color: inherit; |
| 10115 font-weight: bold; |
| 10078 } | 10116 } |
| 10079 | 10117 |
| 10080 hr { | 10118 hr { |
| 10081 margin-top: 20px; | 10119 margin-top: 20px; |
| 10082 margin-bottom: 20px; | 10120 margin-bottom: 20px; |
| 10083 border: 0; | 10121 border: 0; |
| 10084 border-top: 1px solid #eee; | 10122 border-top: 1px solid #eee; |
| 10085 height: 0; | 10123 height: 0; |
| 10086 box-sizing: content-box; | 10124 box-sizing: content-box; |
| 10087 } | 10125 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10240 background-color: #f5f5f5; | 10278 background-color: #f5f5f5; |
| 10241 border: 1px solid #e3e3e3; | 10279 border: 1px solid #e3e3e3; |
| 10242 border-radius: 4px; | 10280 border-radius: 4px; |
| 10243 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 10281 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 10244 } | 10282 } |
| 10245 | 10283 |
| 10246 .break-wrap { | 10284 .break-wrap { |
| 10247 word-wrap: break-word; | 10285 word-wrap: break-word; |
| 10248 } | 10286 } |
| 10249 </style> | 10287 </style> |
| 10250 <style> | |
| 10251 .sourceInset { | |
| 10252 padding-left: 15%; | |
| 10253 padding-right: 15%; | |
| 10254 } | |
| 10255 .miniProfileChart { | |
| 10256 width: 80%; | |
| 10257 } | |
| 10258 </style> | |
| 10259 | 10288 |
| 10260 <nav-bar> | 10289 <nav-bar> |
| 10261 <top-nav-menu></top-nav-menu> | 10290 <top-nav-menu last="{{ true }}"></top-nav-menu> |
| 10262 <isolate-nav-menu isolate="{{ isolate }}" last="{{ true }}"> | |
| 10263 </isolate-nav-menu> | |
| 10264 <nav-refresh callback="{{ refresh }}"></nav-refresh> | 10291 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 10265 </nav-bar> | 10292 </nav-bar> |
| 10266 | 10293 |
| 10267 <div class="content"> | 10294 <div class="content"> |
| 10268 <h1>isolate '{{ isolate.name }}'</h1> | 10295 <h1>Process</h1> |
| 10269 </div> | |
| 10270 | 10296 |
| 10271 <br> | 10297 <br> |
| 10272 <div class="flex-row"> | 10298 |
| 10273 <div class="flex-item-10-percent"> | 10299 <div class="memberList"> |
| 10300 <div class="memberItem"> |
| 10301 <div class="memberName">Path</div> |
| 10302 <div class="memberValue">{{ process['name'] }}</div> |
| 10303 </div> |
| 10304 <div class="memberItem"> |
| 10305 <div class="memberName">Pid</div> |
| 10306 <div class="memberValue">{{ process['pid'] }}</div> |
| 10307 </div> |
| 10308 <div class="memberItem"> |
| 10309 <div class="memberName">Arguments</div> |
| 10310 <div class="memberValue">{{ process['arguments'] }}</div> |
| 10311 </div> |
| 10312 <div class="memberItem"> |
| 10313 <div class="memberName">Started</div> |
| 10314 <div class="memberValue">{{ process['started'] }}</div> |
| 10315 </div> |
| 10316 <div class="memberItem"> |
| 10317 <div class="memberName">Working Directory</div> |
| 10318 <div class="memberValue">{{ process['workingDirectory'] }}</div> |
| 10319 </div> |
| 10274 </div> | 10320 </div> |
| 10275 <div class="flex-item-20-percent"> | 10321 |
| 10276 <isolate-run-state isolate="{{ isolate }}"></isolate-run-state> | 10322 <br> |
| 10277 </div> | 10323 |
| 10278 <div class="flex-item-60-percent"> | 10324 <h2>Environment</h2> |
| 10279 <isolate-location isolate="{{ isolate }}"></isolate-location> | 10325 <div class="well"> |
| 10280 </div> | 10326 <div class="monospace break-wrap"> |
| 10281 <div class="flex-item-10-percent"> | 10327 <template repeat="{{ variable in process['environment'] }}"> |
| 10328 {{ variable }} |
| 10329 <br> |
| 10330 </template> |
| 10331 </div> |
| 10282 </div> | 10332 </div> |
| 10283 </div> | 10333 </div> |
| 10284 <br> | 10334 <br> |
| 10285 | |
| 10286 <template if="{{ isolate.topFrame != null }}"> | |
| 10287 <br> | |
| 10288 <script-inset script="{{ isolate.topFrame['script'] }}" pos="{{ isolate.to
pFrame['tokenPos'] }}"> | |
| 10289 </script-inset> | |
| 10290 </template> | |
| 10291 | |
| 10292 <div class="flex-row"> | |
| 10293 <div class="flex-item-20-percent"></div> | |
| 10294 <div class="flex-item-60-percent"><hr></div> | |
| 10295 <div class="flex-item-20-percent"></div> | |
| 10296 </div> | |
| 10297 | |
| 10298 <br> | |
| 10299 | |
| 10300 <isolate-shared-summary isolate="{{ isolate }}"></isolate-shared-summary> | |
| 10301 | |
| 10302 <div class="flex-row"> | |
| 10303 <div class="flex-item-20-percent"></div> | |
| 10304 <div class="flex-item-60-percent"><hr></div> | |
| 10305 <div class="flex-item-20-percent"></div> | |
| 10306 </div> | |
| 10307 | |
| 10308 <div class="content-centered"> | |
| 10309 <div class="flex-row"> | |
| 10310 <div class="flex-item-50-percent"> | |
| 10311 <div class="memberList"> | |
| 10312 <div class="memberItem"> | |
| 10313 <div class="memberName">root library</div> | |
| 10314 <div class="memberValue"> | |
| 10315 <library-ref ref="{{ isolate.rootLib }}"></library-ref> | |
| 10316 </div> | |
| 10317 </div> | |
| 10318 <div class="memberItem"> | |
| 10319 <template if="{{ isolate.entry != null }}"> | |
| 10320 <div class="memberName">entry</div> | |
| 10321 <div class="memberValue"> | |
| 10322 <function-ref ref="{{ isolate.entry }}"></function-ref> | |
| 10323 </div> | |
| 10324 </template> | |
| 10325 </div> | |
| 10326 <div class="memberItem"> | |
| 10327 <div class="memberName">isolate id</div> | |
| 10328 <div class="memberValue">{{ isolate.mainPort }}</div> | |
| 10329 </div> | |
| 10330 </div> | |
| 10331 </div> | |
| 10332 <div class="flex-item-50-percent"> | |
| 10333 <div class="memberItem"> | |
| 10334 <div class="memberValue"> | |
| 10335 See <a href="{{ isolate.relativeHashLink('debug/breakpoints') }}">
breakpoints</a> | |
| 10336 </div> | |
| 10337 </div> | |
| 10338 </div> | |
| 10339 </div> | |
| 10340 </div> | |
| 10341 | |
| 10342 <hr> | 10335 <hr> |
| 10343 | |
| 10344 <div class="content"> | |
| 10345 libraries ({{ isolate.libraries.length }}) | |
| 10346 <curly-block expand="{{ isolate.libraries.length <= 8 }}"> | |
| 10347 <div class="memberList"> | |
| 10348 <template repeat="{{ lib in isolate.libraries }}"> | |
| 10349 <div class="memberItem"> | |
| 10350 <div class="memberName"> | |
| 10351 <library-ref ref="{{ lib }}"></library-ref> | |
| 10352 </div> | |
| 10353 </div> | |
| 10354 </template> | |
| 10355 </div> | |
| 10356 </curly-block> | |
| 10357 </div> | |
| 10358 | |
| 10359 <hr> | |
| 10360 | |
| 10361 <div class="content"> | |
| 10362 <div id="tagProfileChart" class="miniProfileChart" style="height: 600px"><
/div> | |
| 10363 </div> | |
| 10364 | |
| 10365 <hr> | |
| 10366 | |
| 10367 <div class="content"> | |
| 10368 <eval-box callback="{{ eval }}"></eval-box> | |
| 10369 </div> | |
| 10370 <br><br><br><br> | |
| 10371 <br><br><br><br> | |
| 10372 </template> | 10336 </template> |
| 10373 | |
| 10374 </polymer-element> | 10337 </polymer-element> |
| 10375 | 10338 |
| 10376 | 10339 |
| 10377 | 10340 |
| 10378 | 10341 |
| 10379 | 10342 <polymer-element name="isolate-ref" extends="service-ref"> |
| 10380 | 10343 <template><style> |
| 10381 | |
| 10382 | |
| 10383 | |
| 10384 | |
| 10385 <polymer-element name="instance-view" extends="observatory-element"> | |
| 10386 <template> | |
| 10387 <style> | |
| 10388 /* Global styles */ | 10344 /* Global styles */ |
| 10389 * { | 10345 * { |
| 10390 margin: 0; | 10346 margin: 0; |
| 10391 padding: 0; | 10347 padding: 0; |
| 10392 font: 400 14px 'Montserrat', sans-serif; | 10348 font: 400 14px 'Montserrat', sans-serif; |
| 10393 color: #333; | 10349 color: #333; |
| 10394 box-sizing: border-box; | 10350 box-sizing: border-box; |
| 10395 } | 10351 } |
| 10396 | 10352 |
| 10397 .content { | 10353 .content { |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10435 color: #0489c3; | 10391 color: #0489c3; |
| 10436 text-decoration: none; | 10392 text-decoration: none; |
| 10437 } | 10393 } |
| 10438 | 10394 |
| 10439 a:hover { | 10395 a:hover { |
| 10440 text-decoration: underline; | 10396 text-decoration: underline; |
| 10441 } | 10397 } |
| 10442 | 10398 |
| 10443 em { | 10399 em { |
| 10444 color: inherit; | 10400 color: inherit; |
| 10445 font-style:italic; | 10401 font-style: italic; |
| 10402 } |
| 10403 |
| 10404 b { |
| 10405 color: inherit; |
| 10406 font-weight: bold; |
| 10446 } | 10407 } |
| 10447 | 10408 |
| 10448 hr { | 10409 hr { |
| 10449 margin-top: 20px; | 10410 margin-top: 20px; |
| 10450 margin-bottom: 20px; | 10411 margin-bottom: 20px; |
| 10451 border: 0; | 10412 border: 0; |
| 10452 border-top: 1px solid #eee; | 10413 border-top: 1px solid #eee; |
| 10453 height: 0; | 10414 height: 0; |
| 10454 box-sizing: content-box; | 10415 box-sizing: content-box; |
| 10455 } | 10416 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10608 background-color: #f5f5f5; | 10569 background-color: #f5f5f5; |
| 10609 border: 1px solid #e3e3e3; | 10570 border: 1px solid #e3e3e3; |
| 10610 border-radius: 4px; | 10571 border-radius: 4px; |
| 10611 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 10572 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 10612 } | 10573 } |
| 10613 | 10574 |
| 10614 .break-wrap { | 10575 .break-wrap { |
| 10615 word-wrap: break-word; | 10576 word-wrap: break-word; |
| 10616 } | 10577 } |
| 10617 </style> | 10578 </style> |
| 10618 <nav-bar> | 10579 <a href="{{ url }}">{{ ref.name }}</a> |
| 10619 <top-nav-menu></top-nav-menu> | 10580 </template> |
| 10620 <isolate-nav-menu isolate="{{ instance.isolate }}"></isolate-nav-menu> | |
| 10621 <!-- TODO(turnidge): Add library nav menu here. --> | |
| 10622 <class-nav-menu cls="{{ instance['class'] }}"></class-nav-menu> | |
| 10623 <nav-menu link="." anchor="instance" last="{{ true }}"></nav-menu> | |
| 10624 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
| 10625 </nav-bar> | |
| 10626 | 10581 |
| 10627 <template if="{{ instance['error'] != null }}"> | |
| 10628 <error-view error_obj="{{ instance['error'] }}"></error-view> | |
| 10629 </template> | |
| 10630 | |
| 10631 <template if="{{ instance['error'] == null }}"> | |
| 10632 <div class="content"> | |
| 10633 <!-- TODO(turnidge): Handle null instances. --> | |
| 10634 <template if="{{ isType(instance.serviceType) }}"> | |
| 10635 <h1>type {{ instance['user_name'] }}</h1> | |
| 10636 </template> | |
| 10637 <template if="{{ !isType(instance.serviceType) }}"> | |
| 10638 <h1>instance of {{ instance['class']['user_name'] }}</h1> | |
| 10639 </template> | |
| 10640 <div class="memberList"> | |
| 10641 <div class="memberItem"> | |
| 10642 <div class="memberName">class</div> | |
| 10643 <div class="memberValue"> | |
| 10644 <class-ref ref="{{ instance['class'] }}"> | |
| 10645 </class-ref> | |
| 10646 </div> | |
| 10647 </div> | |
| 10648 <template if="{{ instance['valueAsString'] != null }}"> | |
| 10649 <div class="memberItem"> | |
| 10650 <div class="memberName">value</div> | |
| 10651 <div class="memberValue">{{ instance['valueAsString'] }}</div> | |
| 10652 </div> | |
| 10653 </template> | |
| 10654 <div class="memberItem"> | |
| 10655 <div class="memberName">size</div> | |
| 10656 <div class="memberValue">{{ instance['size'] | formatSize }}</div> | |
| 10657 </div> | |
| 10658 <div class="memberItem"> | |
| 10659 <div class="memberName">retained size</div> | |
| 10660 <div class="memberValue"> | |
| 10661 <eval-link callback="{{ retainedSize }}" label="[calculate]"> | |
| 10662 </eval-link> | |
| 10663 </div> | |
| 10664 </div> | |
| 10665 <div class="memberItem"> | |
| 10666 <div class="memberName">retaining path</div> | |
| 10667 <div class="memberValue"> | |
| 10668 <template if="{{ path == null }}"> | |
| 10669 <eval-link callback="{{ retainingPath }}" label="[find]" expr="1
0"> | |
| 10670 </eval-link> | |
| 10671 </template> | |
| 10672 <template if="{{ path != null }}"> | |
| 10673 <template repeat="{{ element in path['elements'] }}"> | |
| 10674 <div class="memberItem"> | |
| 10675 <div class="memberName">[{{ element['index']}}]</div> | |
| 10676 <div class="memberValue"> | |
| 10677 <instance-ref ref="{{ element['value'] }}"></instance-ref> | |
| 10678 </div> | |
| 10679 </div> | |
| 10680 </template> | |
| 10681 <template if="{{ path['length'] > path['elements'].length }}"> | |
| 10682 showing {{ path['elements'].length }} of {{ path['length'] }} | |
| 10683 <eval-link callback="{{ retainingPath }}" label="[find more]"
expr="{{ path['elements'].length * 2 }}"> | |
| 10684 </eval-link> | |
| 10685 </template> | |
| 10686 </template> | |
| 10687 </div> | |
| 10688 </div> | |
| 10689 <template if="{{ instance['type_class'] != null }}"> | |
| 10690 <div class="memberItem"> | |
| 10691 <div class="memberName">type class</div> | |
| 10692 <div class="memberValue"> | |
| 10693 <class-ref ref="{{ instance['type_class'] }}"> | |
| 10694 </class-ref> | |
| 10695 </div> | |
| 10696 </div> | |
| 10697 </template> | |
| 10698 <template if="{{ instance['closureFunc'] != null }}"> | |
| 10699 <div class="memberItem"> | |
| 10700 <div class="memberName">closure function</div> | |
| 10701 <div class="memberValue"> | |
| 10702 <function-ref ref="{{ instance['closureFunc'] }}"> | |
| 10703 </function-ref> | |
| 10704 </div> | |
| 10705 </div> | |
| 10706 </template> | |
| 10707 | |
| 10708 <div class="memberItem"> </div> | |
| 10709 | |
| 10710 <div class="memberItem"> | |
| 10711 <div class="memberName">toString()</div> | |
| 10712 <div class="memberValue"> | |
| 10713 <eval-link callback="{{ eval }}" expr="toString()"></eval-link> | |
| 10714 </div> | |
| 10715 </div> | |
| 10716 </div> | |
| 10717 </div> | |
| 10718 | |
| 10719 <hr> | |
| 10720 | |
| 10721 <div class="content"> | |
| 10722 <template if="{{ instance['fields'].isNotEmpty }}"> | |
| 10723 fields ({{ instance['fields'].length }}) | |
| 10724 <curly-block expand="{{ instance['fields'].length <= 8 }}"> | |
| 10725 <div class="memberList"> | |
| 10726 <template repeat="{{ field in instance['fields'] }}"> | |
| 10727 <div class="memberItem"> | |
| 10728 <div class="memberName"> | |
| 10729 <field-ref ref="{{ field['decl'] }}"></field-ref> | |
| 10730 </div> | |
| 10731 <div class="memberValue"> | |
| 10732 <instance-ref ref="{{ field['value'] }}"></instance-ref> | |
| 10733 </div> | |
| 10734 </div> | |
| 10735 </template> | |
| 10736 </div> | |
| 10737 </curly-block><br><br> | |
| 10738 </template> | |
| 10739 | |
| 10740 <template if="{{ instance['nativeFields'].isNotEmpty }}"> | |
| 10741 native fields ({{ instance['nativeFields'].length }}) | |
| 10742 <curly-block expand="{{ instance['nativeFields'].length <= 8 }}"> | |
| 10743 <div class="memberList"> | |
| 10744 <template repeat="{{ field in instance['nativeFields'] }}"> | |
| 10745 <div class="memberItem"> | |
| 10746 <div class="memberName">[{{ field['index']}}]</div> | |
| 10747 <div class="memberValue">[{{ field['value']}}]</div> | |
| 10748 </div> | |
| 10749 </template> | |
| 10750 </div> | |
| 10751 </curly-block><br><br> | |
| 10752 </template> | |
| 10753 | |
| 10754 <template if="{{ instance['elements'].isNotEmpty }}"> | |
| 10755 elements ({{ instance['elements'].length }}) | |
| 10756 <curly-block expand="{{ instance['elements'].length <= 8 }}"> | |
| 10757 <div class="memberList"> | |
| 10758 <template repeat="{{ element in instance['elements'] }}"> | |
| 10759 <div class="memberItem"> | |
| 10760 <div class="memberName">[{{ element['index']}}]</div> | |
| 10761 <div class="memberValue"> | |
| 10762 <instance-ref ref="{{ element['value'] }}"> | |
| 10763 </instance-ref> | |
| 10764 </div> | |
| 10765 </div> | |
| 10766 </template> | |
| 10767 </div> | |
| 10768 </curly-block><br><br> | |
| 10769 </template> | |
| 10770 </div> | |
| 10771 | |
| 10772 <hr> | |
| 10773 | |
| 10774 <div class="content"> | |
| 10775 <eval-box callback="{{ eval }}"></eval-box> | |
| 10776 </div> | |
| 10777 <br><br><br><br> | |
| 10778 <br><br><br><br> | |
| 10779 | |
| 10780 </template> | |
| 10781 </template> | |
| 10782 | |
| 10783 </polymer-element> | |
| 10784 | |
| 10785 | |
| 10786 <polymer-element name="json-view" extends="observatory-element"> | |
| 10787 <template> | |
| 10788 <nav-bar> | |
| 10789 <top-nav-menu last="{{ true }}"></top-nav-menu> | |
| 10790 </nav-bar> | |
| 10791 <pre>{{ mapAsString }}</pre> | |
| 10792 </template> | |
| 10793 | |
| 10794 </polymer-element> | 10582 </polymer-element> |
| 10795 | 10583 |
| 10796 | 10584 |
| 10797 | 10585 |
| 10798 | 10586 |
| 10799 | 10587 |
| 10800 | 10588 |
| 10801 | 10589 |
| 10802 | 10590 <polymer-element name="isolate-summary" extends="observatory-element"> |
| 10803 | |
| 10804 | |
| 10805 | |
| 10806 <polymer-element name="library-view" extends="observatory-element"> | |
| 10807 <template> | 10591 <template> |
| 10808 <style> | 10592 <style> |
| 10809 /* Global styles */ | 10593 /* Global styles */ |
| 10810 * { | 10594 * { |
| 10811 margin: 0; | 10595 margin: 0; |
| 10812 padding: 0; | 10596 padding: 0; |
| 10813 font: 400 14px 'Montserrat', sans-serif; | 10597 font: 400 14px 'Montserrat', sans-serif; |
| 10814 color: #333; | 10598 color: #333; |
| 10815 box-sizing: border-box; | 10599 box-sizing: border-box; |
| 10816 } | 10600 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10856 color: #0489c3; | 10640 color: #0489c3; |
| 10857 text-decoration: none; | 10641 text-decoration: none; |
| 10858 } | 10642 } |
| 10859 | 10643 |
| 10860 a:hover { | 10644 a:hover { |
| 10861 text-decoration: underline; | 10645 text-decoration: underline; |
| 10862 } | 10646 } |
| 10863 | 10647 |
| 10864 em { | 10648 em { |
| 10865 color: inherit; | 10649 color: inherit; |
| 10866 font-style:italic; | 10650 font-style: italic; |
| 10651 } |
| 10652 |
| 10653 b { |
| 10654 color: inherit; |
| 10655 font-weight: bold; |
| 10867 } | 10656 } |
| 10868 | 10657 |
| 10869 hr { | 10658 hr { |
| 10870 margin-top: 20px; | 10659 margin-top: 20px; |
| 10871 margin-bottom: 20px; | 10660 margin-bottom: 20px; |
| 10872 border: 0; | 10661 border: 0; |
| 10873 border-top: 1px solid #eee; | 10662 border-top: 1px solid #eee; |
| 10874 height: 0; | 10663 height: 0; |
| 10875 box-sizing: content-box; | 10664 box-sizing: content-box; |
| 10876 } | 10665 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11029 background-color: #f5f5f5; | 10818 background-color: #f5f5f5; |
| 11030 border: 1px solid #e3e3e3; | 10819 border: 1px solid #e3e3e3; |
| 11031 border-radius: 4px; | 10820 border-radius: 4px; |
| 11032 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 10821 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 11033 } | 10822 } |
| 11034 | 10823 |
| 11035 .break-wrap { | 10824 .break-wrap { |
| 11036 word-wrap: break-word; | 10825 word-wrap: break-word; |
| 11037 } | 10826 } |
| 11038 </style> | 10827 </style> |
| 11039 | 10828 <div class="flex-row"> |
| 11040 <nav-bar> | 10829 <div class="flex-item-10-percent"> |
| 11041 <top-nav-menu></top-nav-menu> | 10830 <img src="packages/observatory/src/elements/img/isolate_icon.png"> |
| 11042 <isolate-nav-menu isolate="{{ library.isolate }}"></isolate-nav-menu> | 10831 </div> |
| 11043 <library-nav-menu library="{{ library }}" last="{{ true }}"></library-nav-
menu> | 10832 <div class="flex-item-10-percent"> |
| 11044 <nav-refresh callback="{{ refresh }}"></nav-refresh> | 10833 <isolate-ref ref="{{ isolate }}"></isolate-ref> |
| 11045 </nav-bar> | 10834 </div> |
| 11046 | 10835 <div class="flex-item-20-percent"> |
| 11047 <div class="content"> | 10836 <isolate-run-state isolate="{{ isolate }}"></isolate-run-state> |
| 11048 <h1> | 10837 </div> |
| 11049 <!-- TODO(turnidge): Handle unnamed libraries --> | 10838 <div class="flex-item-50-percent"> |
| 11050 library {{ library.name }} | 10839 <isolate-location isolate="{{ isolate }}"></isolate-location> |
| 11051 </h1> | 10840 </div> |
| 11052 <div class="memberList"> | 10841 <div class="flex-item-10-percent"> |
| 11053 <div class="memberItem"> | |
| 11054 <div class="memberName">url</div> | |
| 11055 <div class="memberValue">{{ library.url }}</div> | |
| 11056 </div> | |
| 11057 <template if="{{ library.name != library.vmName }}"> | |
| 11058 <div class="memberItem"> | |
| 11059 <div class="memberName">vm name</div> | |
| 11060 <div class="memberValue">{{ library.vmName }}</div> | |
| 11061 </div> | |
| 11062 </template> | |
| 11063 </div> | 10842 </div> |
| 11064 </div> | 10843 </div> |
| 11065 | 10844 |
| 11066 <hr> | 10845 <div class="flex-row"> |
| 11067 | 10846 <div class="flex-item-20-percent"></div> |
| 11068 <div class="content"> | 10847 <div class="flex-item-60-percent"> |
| 11069 <template if="{{ library.imports.isNotEmpty }}"> | 10848 <hr> |
| 11070 imports ({{ library.imports.length }}) | 10849 </div> |
| 11071 <curly-block expand="{{ library.imports.length <= 8 }}"> | 10850 <div class="flex-item-20-percent"></div> |
| 11072 <div class="memberList"> | |
| 11073 <template repeat="{{ imp in library.imports }}"> | |
| 11074 <div class="memberItem"> | |
| 11075 <div class="memberValue"> | |
| 11076 <library-ref ref="{{ imp }}"></library-ref> | |
| 11077 </div> | |
| 11078 </div> | |
| 11079 </template> | |
| 11080 </div> | |
| 11081 </curly-block><br> | |
| 11082 <br> | |
| 11083 </template> | |
| 11084 | |
| 11085 <template if="{{ library.scripts.isNotEmpty }}"> | |
| 11086 scripts ({{ library.scripts.length }}) | |
| 11087 <curly-block expand="{{ library.scripts.length <= 8 }}"> | |
| 11088 <div class="memberList"> | |
| 11089 <template repeat="{{ script in library.scripts }}"> | |
| 11090 <div class="memberItem"> | |
| 11091 <div class="memberValue"> | |
| 11092 <script-ref ref="{{ script }}"></script-ref> | |
| 11093 </div> | |
| 11094 </div> | |
| 11095 </template> | |
| 11096 </div> | |
| 11097 </curly-block><br> | |
| 11098 <br> | |
| 11099 </template> | |
| 11100 | |
| 11101 <template if="{{ library.classes.isNotEmpty }}"> | |
| 11102 classes ({{ library.classes.length }}) | |
| 11103 <curly-block expand="{{ library.classes.length <= 8 }}"> | |
| 11104 <div class="memberList"> | |
| 11105 <template repeat="{{ cls in library.classes }}"> | |
| 11106 <div class="memberItem"> | |
| 11107 <div class="memberValue"> | |
| 11108 <class-ref ref="{{ cls }}"></class-ref> | |
| 11109 </div> | |
| 11110 </div> | |
| 11111 </template> | |
| 11112 </div> | |
| 11113 </curly-block><br> | |
| 11114 <br> | |
| 11115 </template> | |
| 11116 | |
| 11117 <template if="{{ library.variables.isNotEmpty }}"> | |
| 11118 variables ({{ library.variables.length }}) | |
| 11119 <curly-block expand="{{ library.variables.length <= 8 }}"> | |
| 11120 <div class="memberList"> | |
| 11121 <template repeat="{{ field in library.variables }}"> | |
| 11122 <div class="memberItem"> | |
| 11123 <div class="memberName"> | |
| 11124 <field-ref ref="{{ field }}"></field-ref> | |
| 11125 </div> | |
| 11126 <div class="memberValue"> | |
| 11127 <template if="{{ field['value'] != null }}"> | |
| 11128 <instance-ref ref="{{ field['value'] }}"></instance-ref> | |
| 11129 </template> | |
| 11130 </div> | |
| 11131 </div> | |
| 11132 </template> | |
| 11133 </div> | |
| 11134 </curly-block><br> | |
| 11135 <br> | |
| 11136 </template> | |
| 11137 | |
| 11138 <template if="{{ library.functions.isNotEmpty }}"> | |
| 11139 functions ({{ library.functions.length }}) | |
| 11140 <curly-block expand="{{ library.functions.length <= 8 }}"> | |
| 11141 <div class="memberList"> | |
| 11142 <template repeat="{{ function in library.functions }}"> | |
| 11143 <div class="memberItem"> | |
| 11144 <div class="memberValue"> | |
| 11145 <function-ref ref="{{ function }}"></function-ref> | |
| 11146 </div> | |
| 11147 </div> | |
| 11148 </template> | |
| 11149 </div> | |
| 11150 </curly-block><br> | |
| 11151 <br> | |
| 11152 </template> | |
| 11153 </div> | 10851 </div> |
| 11154 | 10852 |
| 11155 <hr> | 10853 <isolate-shared-summary isolate="{{ isolate }}"></isolate-shared-summary> |
| 11156 | 10854 |
| 11157 <div class="content"> | |
| 11158 <eval-box callback="{{ eval }}"></eval-box> | |
| 11159 </div> | |
| 11160 <br><br><br><br> | |
| 11161 <br><br><br><br> | |
| 11162 </template> | 10855 </template> |
| 11163 | |
| 11164 </polymer-element> | 10856 </polymer-element> |
| 11165 | 10857 |
| 11166 | 10858 <polymer-element name="isolate-run-state" extends="observatory-element"> |
| 11167 | 10859 <template> |
| 10860 <template if="{{ isolate.pauseEvent != null }}"> |
| 10861 <strong>paused</strong> |
| 10862 <action-link callback="{{ resume }}" label="resume"></action-link> |
| 10863 </template> |
| 11168 | 10864 |
| 11169 | 10865 <template if="{{ isolate.running }}"> |
| 11170 | 10866 <strong>running</strong> |
| 10867 <action-link callback="{{ pause }}" label="pause"></action-link> |
| 10868 </template> |
| 11171 | 10869 |
| 11172 | 10870 <template if="{{ isolate.idle }}"> |
| 11173 | 10871 <strong>idle</strong> |
| 11174 | 10872 </template> |
| 11175 | |
| 11176 | |
| 11177 | |
| 11178 | |
| 11179 | |
| 11180 | |
| 11181 | |
| 11182 | |
| 11183 | |
| 11184 | |
| 11185 | |
| 11186 | |
| 11187 | 10873 |
| 11188 | 10874 <template if="{{ isolate.loading }}"> |
| 11189 | 10875 <strong>loading...</strong> |
| 11190 | 10876 </template> |
| 11191 <polymer-element name="heap-profile" extends="observatory-element"> | 10877 </template> |
| 11192 <template> | 10878 </polymer-element> |
| 11193 <style> | 10879 |
| 10880 <polymer-element name="isolate-location" extends="observatory-element"> |
| 10881 <template> |
| 10882 <template if="{{ isolate.pauseEvent != null }}"> |
| 10883 <template if="{{ isolate.pauseEvent['eventType'] == 'IsolateCreated' }}"> |
| 10884 at isolate start |
| 10885 </template> |
| 10886 <template if="{{ isolate.pauseEvent['eventType'] == 'IsolateShutdown' }}"> |
| 10887 at isolate exit |
| 10888 </template> |
| 10889 <template if="{{ isolate.pauseEvent['eventType'] == 'IsolateInterrupted' }
}"> |
| 10890 at |
| 10891 <function-ref ref="{{ isolate.topFrame['function'] }}"> |
| 10892 </function-ref> |
| 10893 (<script-ref ref="{{ isolate.topFrame['script'] }}" pos="{{ isolate.topF
rame['tokenPos'] }}"></script-ref>) |
| 10894 </template> |
| 10895 <template if="{{ isolate.pauseEvent['eventType'] == 'BreakpointReached' }}
"> |
| 10896 at breakpoint {{ isolate.pauseEvent['breakpoint']['id'] }} |
| 10897 <function-ref ref="{{ isolate.topFrame['function'] }}"> |
| 10898 </function-ref> |
| 10899 (<script-ref ref="{{ isolate.topFrame['script'] }}" pos="{{ isolate.topF
rame['tokenPos'] }}"></script-ref>) |
| 10900 </template> |
| 10901 </template> |
| 10902 |
| 10903 <template if="{{ isolate.running }}"> |
| 10904 at |
| 10905 <function-ref ref="{{ isolate.topFrame['function'] }}"> |
| 10906 </function-ref> |
| 10907 (<script-ref ref="{{ isolate.topFrame['script'] }}" pos="{{ isolate.topFra
me['tokenPos'] }}"></script-ref>) |
| 10908 </template> |
| 10909 |
| 10910 </template> |
| 10911 </polymer-element> |
| 10912 |
| 10913 <polymer-element name="isolate-shared-summary" extends="observatory-element"> |
| 10914 <template> |
| 10915 <style> |
| 10916 .errorBox { |
| 10917 background-color: #f5f5f5; |
| 10918 border: 1px solid #ccc; |
| 10919 padding: 10px; |
| 10920 font-family: consolas, courier, monospace; |
| 10921 font-size: 1em; |
| 10922 line-height: 1.2em; |
| 10923 white-space: pre; |
| 10924 } |
| 10925 </style> |
| 10926 <style> |
| 11194 /* Global styles */ | 10927 /* Global styles */ |
| 11195 * { | 10928 * { |
| 11196 margin: 0; | 10929 margin: 0; |
| 11197 padding: 0; | 10930 padding: 0; |
| 11198 font: 400 14px 'Montserrat', sans-serif; | 10931 font: 400 14px 'Montserrat', sans-serif; |
| 11199 color: #333; | 10932 color: #333; |
| 11200 box-sizing: border-box; | 10933 box-sizing: border-box; |
| 11201 } | 10934 } |
| 11202 | 10935 |
| 11203 .content { | 10936 .content { |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11241 color: #0489c3; | 10974 color: #0489c3; |
| 11242 text-decoration: none; | 10975 text-decoration: none; |
| 11243 } | 10976 } |
| 11244 | 10977 |
| 11245 a:hover { | 10978 a:hover { |
| 11246 text-decoration: underline; | 10979 text-decoration: underline; |
| 11247 } | 10980 } |
| 11248 | 10981 |
| 11249 em { | 10982 em { |
| 11250 color: inherit; | 10983 color: inherit; |
| 11251 font-style:italic; | 10984 font-style: italic; |
| 10985 } |
| 10986 |
| 10987 b { |
| 10988 color: inherit; |
| 10989 font-weight: bold; |
| 11252 } | 10990 } |
| 11253 | 10991 |
| 11254 hr { | 10992 hr { |
| 11255 margin-top: 20px; | 10993 margin-top: 20px; |
| 11256 margin-bottom: 20px; | 10994 margin-bottom: 20px; |
| 11257 border: 0; | 10995 border: 0; |
| 11258 border-top: 1px solid #eee; | 10996 border-top: 1px solid #eee; |
| 11259 height: 0; | 10997 height: 0; |
| 11260 box-sizing: content-box; | 10998 box-sizing: content-box; |
| 11261 } | 10999 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11414 background-color: #f5f5f5; | 11152 background-color: #f5f5f5; |
| 11415 border: 1px solid #e3e3e3; | 11153 border: 1px solid #e3e3e3; |
| 11416 border-radius: 4px; | 11154 border-radius: 4px; |
| 11417 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 11155 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 11418 } | 11156 } |
| 11419 | 11157 |
| 11420 .break-wrap { | 11158 .break-wrap { |
| 11421 word-wrap: break-word; | 11159 word-wrap: break-word; |
| 11422 } | 11160 } |
| 11423 </style> | 11161 </style> |
| 11424 <style> | 11162 <template if="{{ isolate.error != null }}"> |
| 11425 .table { | 11163 <div class="content-centered"> |
| 11426 border-collapse: collapse!important; | 11164 <pre class="errorBox">{{ isolate.error.message }}</pre> |
| 11427 width: 100%; | 11165 <br> |
| 11428 margin-bottom: 20px | 11166 </div> |
| 11429 table-layout: fixed; | 11167 </template> |
| 11430 } | 11168 <div class="flex-row"> |
| 11431 .table td:nth-of-type(1) { | 11169 <div class="flex-item-10-percent"> |
| 11432 width: 30%; | 11170 </div> |
| 11433 } | 11171 <div class="flex-item-40-percent"> |
| 11434 .th, .td { | 11172 <isolate-counter-chart counters="{{ isolate.counters }}"></isolate-count
er-chart> |
| 11435 padding: 8px; | 11173 </div> |
| 11436 vertical-align: top; | 11174 <div class="flex-item-40-percent"> |
| 11437 } | 11175 <div class="memberList"> |
| 11438 .table thead > tr > th { | |
| 11439 vertical-align: bottom; | |
| 11440 text-align: left; | |
| 11441 border-bottom:2px solid #ddd; | |
| 11442 } | |
| 11443 .clickable { | |
| 11444 color: #0489c3; | |
| 11445 text-decoration: none; | |
| 11446 cursor: pointer; | |
| 11447 } | |
| 11448 .clickable:hover { | |
| 11449 text-decoration: underline; | |
| 11450 cursor: pointer; | |
| 11451 } | |
| 11452 #classtable tr:hover > td { | |
| 11453 background-color: #F4C7C3; | |
| 11454 } | |
| 11455 </style> | |
| 11456 <nav-bar> | |
| 11457 <top-nav-menu></top-nav-menu> | |
| 11458 <isolate-nav-menu isolate="{{ profile.isolate }}"></isolate-nav-menu> | |
| 11459 <nav-menu link="{{ profile.isolate.relativeHashLink('allocationprofile') }}"
anchor="heap profile" last="{{ true }}"></nav-menu> | |
| 11460 <nav-refresh callback="{{ resetAccumulator }}" label="Reset Accumulator"></n
av-refresh> | |
| 11461 <nav-refresh callback="{{ refreshGC }}" label="GC"></nav-refresh> | |
| 11462 <nav-refresh callback="{{ refresh }}"></nav-refresh> | |
| 11463 </nav-bar> | |
| 11464 | |
| 11465 <div class="flex-row"> | |
| 11466 <div id="newPieChart" class="flex-item-fixed-4-12" style="height: 400px"> | |
| 11467 </div> | |
| 11468 <div id="newStatus" class="flex-item-fixed-2-12"> | |
| 11469 <div class="memberList"> | |
| 11470 <div class="memberItem"> | 11176 <div class="memberItem"> |
| 11471 <div class="memberName">Collections</div> | 11177 <div class="memberName">new heap</div> |
| 11472 <div class="memberValue">{{ formattedCollections(true) }}</div> | 11178 <div class="memberValue"> |
| 11179 {{ isolate.newHeapUsed | formatSize }} |
| 11180 of |
| 11181 {{ isolate.newHeapCapacity | formatSize }} |
| 11182 </div> |
| 11473 </div> | 11183 </div> |
| 11474 <div class="memberItem"> | 11184 <div class="memberItem"> |
| 11475 <div class="memberName">Average Collection Time</div> | 11185 <div class="memberName">old heap</div> |
| 11476 <div class="memberValue">{{ formattedAverage(true) }}</div> | 11186 <div class="memberValue"> |
| 11187 {{ isolate.oldHeapUsed | formatSize }} |
| 11188 of |
| 11189 {{ isolate.oldHeapCapacity | formatSize }} |
| 11190 </div> |
| 11477 </div> | 11191 </div> |
| 11192 </div> |
| 11193 <br> |
| 11194 <div class="memberItem"> |
| 11195 <div class="memberValue"> |
| 11196 See <a href="{{ isolate.relativeHashLink('stacktrace') }}">stack tra
ce</a> |
| 11197 </div> |
| 11198 </div> |
| 11199 <div class="memberItem"> |
| 11200 <div class="memberValue"> |
| 11201 See <a href="{{ isolate.relativeHashLink('profile') }}">cpu profile<
/a> |
| 11202 </div> |
| 11203 </div> |
| 11204 <div class="memberItem"> |
| 11205 <div class="memberValue"> |
| 11206 See <a href="{{ isolate.relativeHashLink('allocationprofile') }}">al
location profile</a> |
| 11207 </div> |
| 11208 </div> |
| 11209 <div class="memberItem"> |
| 11210 <div class="memberValue"> |
| 11211 See <a href="{{ isolate.relativeHashLink('heapmap') }}">heap map</a> |
| 11212 </div> |
| 11213 </div> |
| 11214 <template if="{{ isolate.ioEnabled }}"> |
| 11478 <div class="memberItem"> | 11215 <div class="memberItem"> |
| 11479 <div class="memberName">Cumulative Collection Time</div> | 11216 <div class="memberValue"> |
| 11480 <div class="memberValue">{{ formattedTotalCollectionTime(true) }}</d
iv> | 11217 See <a href="{{ isolate.relativeHashLink('io') }}">dart:io</a> |
| 11218 </div> |
| 11481 </div> | 11219 </div> |
| 11220 </template> |
| 11221 </div> |
| 11222 <div class="flex-item-10-percent"> |
| 11482 </div> | 11223 </div> |
| 11483 </div> | 11224 </div> |
| 11484 <div id="oldPieChart" class="flex-item-fixed-4-12" style="height: 400px"> | 11225 </template> |
| 11485 </div> | 11226 </polymer-element> |
| 11486 <div id="oldStatus" class="flex-item-fixed-2-12"> | |
| 11487 <div class="memberList"> | |
| 11488 <div class="memberItem"> | |
| 11489 <div class="memberName">Collections</div> | |
| 11490 <div class="memberValue">{{ formattedCollections(false) }}</div> | |
| 11491 </div> | |
| 11492 <div class="memberItem"> | |
| 11493 <div class="memberName">Average Collection Time</div> | |
| 11494 <div class="memberValue">{{ formattedAverage(false) }}</div> | |
| 11495 </div> | |
| 11496 <div class="memberItem"> | |
| 11497 <div class="memberName">Cumulative Collection Time</div> | |
| 11498 <div class="memberValue">{{ formattedTotalCollectionTime(false) }}</
div> | |
| 11499 </div> | |
| 11500 </div> | |
| 11501 </div> | |
| 11502 </div> | |
| 11503 <div class="flex-row"> | |
| 11504 <table id="classtable" class="flex-item-fixed-12-12 table"> | |
| 11505 <thead> | |
| 11506 <tr> | |
| 11507 <th on-click="{{changeSort}}" class="clickable" title="Class">{{ class
Table.getColumnLabel(0) }}</th> | |
| 11508 <th on-click="{{changeSort}}" class="clickable" title="New Accumulated
Size">{{ classTable.getColumnLabel(1) }}</th> | |
| 11509 <th on-click="{{changeSort}}" class="clickable" title="New Accumulated
Instances">{{ classTable.getColumnLabel(2) }}</th> | |
| 11510 <th on-click="{{changeSort}}" class="clickable" title="New Current Siz
e">{{ classTable.getColumnLabel(3) }}</th> | |
| 11511 <th on-click="{{changeSort}}" class="clickable" title="New Current Ins
tances">{{ classTable.getColumnLabel(4) }}</th> | |
| 11512 <th on-click="{{changeSort}}" class="clickable" title="Old Accumulated
Size">{{ classTable.getColumnLabel(5) }}</th> | |
| 11513 <th on-click="{{changeSort}}" class="clickable" title="Old Accumulated
Instances">{{ classTable.getColumnLabel(6) }}</th> | |
| 11514 <th on-click="{{changeSort}}" class="clickable" title="Old Current Siz
e">{{ classTable.getColumnLabel(7) }}</th> | |
| 11515 <th on-click="{{changeSort}}" class="clickable" title="Old Current Ins
tances">{{ classTable.getColumnLabel(8) }}</th> | |
| 11516 </tr> | |
| 11517 </thead> | |
| 11518 <tbody> | |
| 11519 <tr template="" repeat="{{row in classTable.sortedRows }}"> | |
| 11520 <td><class-ref ref="{{ classTable.getValue(row, 0) }}"></class-ref></t
d> | |
| 11521 <td title="{{ classTable.getValue(row, 1) }}">{{ classTable.getFormatt
edValue(row, 1) }}</td> | |
| 11522 <td title="{{ classTable.getValue(row, 2) }}">{{ classTable.getFormatt
edValue(row, 2) }}</td> | |
| 11523 <td title="{{ classTable.getValue(row, 3) }}">{{ classTable.getFormatt
edValue(row, 3) }}</td> | |
| 11524 <td title="{{ classTable.getValue(row, 4) }}">{{ classTable.getFormatt
edValue(row, 4) }}</td> | |
| 11525 <td title="{{ classTable.getValue(row, 5) }}">{{ classTable.getFormatt
edValue(row, 5) }}</td> | |
| 11526 <td title="{{ classTable.getValue(row, 6) }}">{{ classTable.getFormatt
edValue(row, 6) }}</td> | |
| 11527 <td title="{{ classTable.getValue(row, 7) }}">{{ classTable.getFormatt
edValue(row, 7) }}</td> | |
| 11528 <td title="{{ classTable.getValue(row, 8) }}">{{ classTable.getFormatt
edValue(row, 8) }}</td> | |
| 11529 </tr> | |
| 11530 </tbody> | |
| 11531 </table> | |
| 11532 </div> | |
| 11533 </template> | |
| 11534 | 11227 |
| 11228 <polymer-element name="isolate-counter-chart" extends="observatory-element"> |
| 11229 <template> |
| 11230 <div id="counterPieChart" style="height: 200px"></div> |
| 11231 </template> |
| 11535 </polymer-element> | 11232 </polymer-element> |
| 11536 | 11233 |
| 11234 |
| 11235 |
| 11537 | 11236 |
| 11538 | 11237 |
| 11539 | 11238 |
| 11540 | 11239 |
| 11541 | 11240 |
| 11542 <polymer-element name="sliding-checkbox"> | |
| 11543 <template> | |
| 11544 <style> | |
| 11545 .switch { | |
| 11546 position: relative; | |
| 11547 width: 121px; | |
| 11548 -webkit-user-select: none; | |
| 11549 -moz-user-select: none; | |
| 11550 -ms-user-select: none; | |
| 11551 } | |
| 11552 .hide { | |
| 11553 display: none; | |
| 11554 } | |
| 11555 .label { | |
| 11556 display: block; | |
| 11557 overflow: hidden; | |
| 11558 cursor: pointer; | |
| 11559 border: 2px solid #999999; | |
| 11560 border-radius: 15px; | |
| 11561 } | |
| 11562 .content { | |
| 11563 width: 200%; | |
| 11564 margin-left: -100%; | |
| 11565 -moz-transition: margin 0.3s ease-in 0s; | |
| 11566 -webkit-transition: margin 0.3s ease-in 0s; | |
| 11567 -o-transition: margin 0.3s ease-in 0s; | |
| 11568 transition: margin 0.3s ease-in 0s; | |
| 11569 } | |
| 11570 .content:before, .content:after { | |
| 11571 float: left; | |
| 11572 width: 50%; | |
| 11573 height: 30px; | |
| 11574 padding: 0; | |
| 11575 line-height: 30px; | |
| 11576 color: white; | |
| 11577 font: 400 14px 'Montserrat', sans-serif; | |
| 11578 -moz-box-sizing: border-box; | |
| 11579 -webkit-box-sizing: border-box; | |
| 11580 box-sizing: border-box; | |
| 11581 } | |
| 11582 .content:before { | |
| 11583 content: {{ checkedText }}; | |
| 11584 padding-left: 10px; | |
| 11585 background-color: #0489C3; | |
| 11586 } | |
| 11587 .content:after { | |
| 11588 content: {{ uncheckedText }}; | |
| 11589 padding-right: 10px; | |
| 11590 background-color: #EEEEEE; | |
| 11591 color: #999999; | |
| 11592 text-align: right; | |
| 11593 } | |
| 11594 .dot { | |
| 11595 width: 14px; | |
| 11596 margin: 8px; | |
| 11597 background: #FFFFFF; | |
| 11598 border: 2px solid #999999; | |
| 11599 border-radius: 15px; | |
| 11600 position: absolute; | |
| 11601 top: 0; | |
| 11602 bottom: 0; | |
| 11603 right: 87px; | |
| 11604 -moz-transition: all 0.3s ease-in 0s; | |
| 11605 -webkit-transition: all 0.3s ease-in 0s; | |
| 11606 -o-transition: all 0.3s ease-in 0s; | |
| 11607 transition: all 0.3s ease-in 0s; | |
| 11608 } | |
| 11609 :checked + .label .content { | |
| 11610 margin-left: 0; | |
| 11611 } | |
| 11612 :checked + .label .dot { | |
| 11613 right: 0px; | |
| 11614 } | |
| 11615 </style> | |
| 11616 <div class="switch"> | |
| 11617 <input type="checkbox" class="hide" id="slide-switch" on-change="{{ change
}}"> | |
| 11618 <label class="label" for="slide-switch"> | |
| 11619 <div class="content"></div> | |
| 11620 <div class="dot"></div> | |
| 11621 </label> | |
| 11622 </div> | |
| 11623 </template> | |
| 11624 | 11241 |
| 11625 </polymer-element> | 11242 |
| 11626 <polymer-element name="isolate-profile" extends="observatory-element"> | 11243 |
| 11244 |
| 11245 |
| 11246 <polymer-element name="isolate-view" extends="observatory-element"> |
| 11627 <template> | 11247 <template> |
| 11628 <style> | 11248 <style> |
| 11629 /* Global styles */ | 11249 /* Global styles */ |
| 11630 * { | 11250 * { |
| 11631 margin: 0; | 11251 margin: 0; |
| 11632 padding: 0; | 11252 padding: 0; |
| 11633 font: 400 14px 'Montserrat', sans-serif; | 11253 font: 400 14px 'Montserrat', sans-serif; |
| 11634 color: #333; | 11254 color: #333; |
| 11635 box-sizing: border-box; | 11255 box-sizing: border-box; |
| 11636 } | 11256 } |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11676 color: #0489c3; | 11296 color: #0489c3; |
| 11677 text-decoration: none; | 11297 text-decoration: none; |
| 11678 } | 11298 } |
| 11679 | 11299 |
| 11680 a:hover { | 11300 a:hover { |
| 11681 text-decoration: underline; | 11301 text-decoration: underline; |
| 11682 } | 11302 } |
| 11683 | 11303 |
| 11684 em { | 11304 em { |
| 11685 color: inherit; | 11305 color: inherit; |
| 11686 font-style:italic; | 11306 font-style: italic; |
| 11307 } |
| 11308 |
| 11309 b { |
| 11310 color: inherit; |
| 11311 font-weight: bold; |
| 11687 } | 11312 } |
| 11688 | 11313 |
| 11689 hr { | 11314 hr { |
| 11690 margin-top: 20px; | 11315 margin-top: 20px; |
| 11691 margin-bottom: 20px; | 11316 margin-bottom: 20px; |
| 11692 border: 0; | 11317 border: 0; |
| 11693 border-top: 1px solid #eee; | 11318 border-top: 1px solid #eee; |
| 11694 height: 0; | 11319 height: 0; |
| 11695 box-sizing: content-box; | 11320 box-sizing: content-box; |
| 11696 } | 11321 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11849 background-color: #f5f5f5; | 11474 background-color: #f5f5f5; |
| 11850 border: 1px solid #e3e3e3; | 11475 border: 1px solid #e3e3e3; |
| 11851 border-radius: 4px; | 11476 border-radius: 4px; |
| 11852 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 11477 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 11853 } | 11478 } |
| 11854 | 11479 |
| 11855 .break-wrap { | 11480 .break-wrap { |
| 11856 word-wrap: break-word; | 11481 word-wrap: break-word; |
| 11857 } | 11482 } |
| 11858 </style> | 11483 </style> |
| 11484 <style> |
| 11485 .sourceInset { |
| 11486 padding-left: 15%; |
| 11487 padding-right: 15%; |
| 11488 } |
| 11489 .miniProfileChart { |
| 11490 width: 80%; |
| 11491 } |
| 11492 </style> |
| 11493 |
| 11494 <nav-bar> |
| 11495 <top-nav-menu></top-nav-menu> |
| 11496 <isolate-nav-menu isolate="{{ isolate }}" last="{{ true }}"> |
| 11497 </isolate-nav-menu> |
| 11498 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 11499 </nav-bar> |
| 11500 |
| 11501 <div class="content"> |
| 11502 <h1>isolate '{{ isolate.name }}'</h1> |
| 11503 </div> |
| 11504 |
| 11505 <br> |
| 11506 <div class="flex-row"> |
| 11507 <div class="flex-item-10-percent"> |
| 11508 </div> |
| 11509 <div class="flex-item-20-percent"> |
| 11510 <isolate-run-state isolate="{{ isolate }}"></isolate-run-state> |
| 11511 </div> |
| 11512 <div class="flex-item-60-percent"> |
| 11513 <isolate-location isolate="{{ isolate }}"></isolate-location> |
| 11514 </div> |
| 11515 <div class="flex-item-10-percent"> |
| 11516 </div> |
| 11517 </div> |
| 11518 <br> |
| 11519 |
| 11520 <template if="{{ isolate.topFrame != null }}"> |
| 11521 <br> |
| 11522 <script-inset script="{{ isolate.topFrame['script'] }}" pos="{{ isolate.to
pFrame['tokenPos'] }}"> |
| 11523 </script-inset> |
| 11524 </template> |
| 11525 |
| 11526 <div class="flex-row"> |
| 11527 <div class="flex-item-20-percent"></div> |
| 11528 <div class="flex-item-60-percent"><hr></div> |
| 11529 <div class="flex-item-20-percent"></div> |
| 11530 </div> |
| 11531 |
| 11532 <br> |
| 11533 |
| 11534 <isolate-shared-summary isolate="{{ isolate }}"></isolate-shared-summary> |
| 11535 |
| 11536 <div class="flex-row"> |
| 11537 <div class="flex-item-20-percent"></div> |
| 11538 <div class="flex-item-60-percent"><hr></div> |
| 11539 <div class="flex-item-20-percent"></div> |
| 11540 </div> |
| 11541 |
| 11542 <div class="content-centered"> |
| 11543 <div class="flex-row"> |
| 11544 <div class="flex-item-50-percent"> |
| 11545 <div class="memberList"> |
| 11546 <div class="memberItem"> |
| 11547 <div class="memberName">root library</div> |
| 11548 <div class="memberValue"> |
| 11549 <library-ref ref="{{ isolate.rootLib }}"></library-ref> |
| 11550 </div> |
| 11551 </div> |
| 11552 <div class="memberItem"> |
| 11553 <template if="{{ isolate.entry != null }}"> |
| 11554 <div class="memberName">entry</div> |
| 11555 <div class="memberValue"> |
| 11556 <function-ref ref="{{ isolate.entry }}"></function-ref> |
| 11557 </div> |
| 11558 </template> |
| 11559 </div> |
| 11560 <div class="memberItem"> |
| 11561 <div class="memberName">isolate id</div> |
| 11562 <div class="memberValue">{{ isolate.mainPort }}</div> |
| 11563 </div> |
| 11564 </div> |
| 11565 </div> |
| 11566 <div class="flex-item-50-percent"> |
| 11567 <div class="memberItem"> |
| 11568 <div class="memberValue"> |
| 11569 See <a href="{{ isolate.relativeHashLink('debug/breakpoints') }}">
breakpoints</a> |
| 11570 </div> |
| 11571 </div> |
| 11572 </div> |
| 11573 </div> |
| 11574 </div> |
| 11575 |
| 11576 <hr> |
| 11577 |
| 11578 <div class="content"> |
| 11579 libraries ({{ isolate.libraries.length }}) |
| 11580 <curly-block expand="{{ isolate.libraries.length <= 8 }}"> |
| 11581 <div class="memberList"> |
| 11582 <template repeat="{{ lib in isolate.libraries }}"> |
| 11583 <div class="memberItem"> |
| 11584 <div class="memberName"> |
| 11585 <library-ref ref="{{ lib }}"></library-ref> |
| 11586 </div> |
| 11587 </div> |
| 11588 </template> |
| 11589 </div> |
| 11590 </curly-block> |
| 11591 </div> |
| 11592 |
| 11593 <hr> |
| 11594 |
| 11595 <div class="content"> |
| 11596 <div id="tagProfileChart" class="miniProfileChart" style="height: 600px"><
/div> |
| 11597 </div> |
| 11598 |
| 11599 <hr> |
| 11600 |
| 11601 <div class="content"> |
| 11602 <eval-box callback="{{ eval }}"></eval-box> |
| 11603 </div> |
| 11604 <br><br><br><br> |
| 11605 <br><br><br><br> |
| 11606 </template> |
| 11607 |
| 11608 </polymer-element> |
| 11609 |
| 11610 |
| 11611 |
| 11612 |
| 11613 |
| 11614 |
| 11615 |
| 11616 |
| 11617 |
| 11618 |
| 11619 <polymer-element name="instance-view" extends="observatory-element"> |
| 11620 <template> |
| 11621 <style> |
| 11622 /* Global styles */ |
| 11623 * { |
| 11624 margin: 0; |
| 11625 padding: 0; |
| 11626 font: 400 14px 'Montserrat', sans-serif; |
| 11627 color: #333; |
| 11628 box-sizing: border-box; |
| 11629 } |
| 11630 |
| 11631 .content { |
| 11632 padding-left: 10%; |
| 11633 font: 400 14px 'Montserrat', sans-serif; |
| 11634 } |
| 11635 |
| 11636 .content-centered { |
| 11637 padding-left: 10%; |
| 11638 padding-right: 10%; |
| 11639 font: 400 14px 'Montserrat', sans-serif; |
| 11640 } |
| 11641 |
| 11642 h1 { |
| 11643 font: 400 18px 'Montserrat', sans-serif; |
| 11644 } |
| 11645 |
| 11646 .memberList { |
| 11647 display: table; |
| 11648 } |
| 11649 |
| 11650 .memberItem { |
| 11651 display: table-row; |
| 11652 } |
| 11653 |
| 11654 .memberName, .memberValue { |
| 11655 display: table-cell; |
| 11656 vertical-align: top; |
| 11657 padding: 3px 0 3px 1em; |
| 11658 font: 400 14px 'Montserrat', sans-serif; |
| 11659 } |
| 11660 |
| 11661 .monospace { |
| 11662 font-family: consolas, courier, monospace; |
| 11663 font-size: 1em; |
| 11664 line-height: 1.2em; |
| 11665 white-space: nowrap; |
| 11666 } |
| 11667 |
| 11668 a { |
| 11669 color: #0489c3; |
| 11670 text-decoration: none; |
| 11671 } |
| 11672 |
| 11673 a:hover { |
| 11674 text-decoration: underline; |
| 11675 } |
| 11676 |
| 11677 em { |
| 11678 color: inherit; |
| 11679 font-style: italic; |
| 11680 } |
| 11681 |
| 11682 b { |
| 11683 color: inherit; |
| 11684 font-weight: bold; |
| 11685 } |
| 11686 |
| 11687 hr { |
| 11688 margin-top: 20px; |
| 11689 margin-bottom: 20px; |
| 11690 border: 0; |
| 11691 border-top: 1px solid #eee; |
| 11692 height: 0; |
| 11693 box-sizing: content-box; |
| 11694 } |
| 11695 |
| 11696 .list-group { |
| 11697 padding-left: 0; |
| 11698 margin-bottom: 20px; |
| 11699 } |
| 11700 |
| 11701 .list-group-item { |
| 11702 position: relative; |
| 11703 display: block; |
| 11704 padding: 10px 15px; |
| 11705 margin-bottom: -1px; |
| 11706 background-color: #fff; |
| 11707 } |
| 11708 |
| 11709 .list-group-item:first-child { |
| 11710 /* rounded top corners */ |
| 11711 border-top-right-radius:4px; |
| 11712 border-top-left-radius:4px; |
| 11713 } |
| 11714 |
| 11715 .list-group-item:last-child { |
| 11716 margin-bottom: 0; |
| 11717 /* rounded bottom corners */ |
| 11718 border-bottom-right-radius: 4px; |
| 11719 border-bottom-left-radius:4px; |
| 11720 } |
| 11721 |
| 11722 /* Flex row container */ |
| 11723 .flex-row { |
| 11724 display: flex; |
| 11725 flex-direction: row; |
| 11726 } |
| 11727 |
| 11728 /* Flex column container */ |
| 11729 .flex-column { |
| 11730 display: flex; |
| 11731 flex-direction: column; |
| 11732 } |
| 11733 |
| 11734 .flex-item-fit { |
| 11735 flex-grow: 1; |
| 11736 flex-shrink: 1; |
| 11737 flex-basis: auto; |
| 11738 } |
| 11739 |
| 11740 .flex-item-no-shrink { |
| 11741 flex-grow: 0; |
| 11742 flex-shrink: 0; |
| 11743 flex-basis: auto; |
| 11744 } |
| 11745 |
| 11746 .flex-item-fill { |
| 11747 flex-grow: 0; |
| 11748 flex-shrink: 1; /* shrink when pressured */ |
| 11749 flex-basis: 100%; /* try and take 100% */ |
| 11750 } |
| 11751 |
| 11752 .flex-item-fixed-1-12 { |
| 11753 flex-grow: 0; |
| 11754 flex-shrink: 0; |
| 11755 flex-basis: 8.3%; |
| 11756 } |
| 11757 |
| 11758 .flex-item-fixed-2-12 { |
| 11759 flex-grow: 0; |
| 11760 flex-shrink: 0; |
| 11761 flex-basis: 16.6%; |
| 11762 } |
| 11763 |
| 11764 .flex-item-fixed-4-12 { |
| 11765 flex-grow: 0; |
| 11766 flex-shrink: 0; |
| 11767 flex-basis: 33.3333%; |
| 11768 } |
| 11769 |
| 11770 .flex-item-fixed-6-12, .flex-item-50-percent { |
| 11771 flex-grow: 0; |
| 11772 flex-shrink: 0; |
| 11773 flex-basis: 50%; |
| 11774 } |
| 11775 |
| 11776 .flex-item-fixed-8-12 { |
| 11777 flex-grow: 0; |
| 11778 flex-shrink: 0; |
| 11779 flex-basis: 66.6666%; |
| 11780 } |
| 11781 |
| 11782 .flex-item-fixed-9-12 { |
| 11783 flex-grow: 0; |
| 11784 flex-shrink: 0; |
| 11785 flex-basis: 75%; |
| 11786 } |
| 11787 |
| 11788 |
| 11789 .flex-item-fixed-12-12 { |
| 11790 flex-grow: 0; |
| 11791 flex-shrink: 0; |
| 11792 flex-basis: 100%; |
| 11793 } |
| 11794 |
| 11795 .flex-item-10-percent { |
| 11796 flex-grow: 0; |
| 11797 flex-shrink: 0; |
| 11798 flex-basis: 10%; |
| 11799 } |
| 11800 |
| 11801 .flex-item-15-percent { |
| 11802 flex-grow: 0; |
| 11803 flex-shrink: 0; |
| 11804 flex-basis: 15%; |
| 11805 } |
| 11806 |
| 11807 .flex-item-20-percent { |
| 11808 flex-grow: 0; |
| 11809 flex-shrink: 0; |
| 11810 flex-basis: 20%; |
| 11811 } |
| 11812 |
| 11813 .flex-item-30-percent { |
| 11814 flex-grow: 0; |
| 11815 flex-shrink: 0; |
| 11816 flex-basis: 30%; |
| 11817 } |
| 11818 |
| 11819 .flex-item-40-percent { |
| 11820 flex-grow: 0; |
| 11821 flex-shrink: 0; |
| 11822 flex-basis: 40%; |
| 11823 } |
| 11824 |
| 11825 .flex-item-60-percent { |
| 11826 flex-grow: 0; |
| 11827 flex-shrink: 0; |
| 11828 flex-basis: 60%; |
| 11829 } |
| 11830 |
| 11831 .flex-item-70-percent { |
| 11832 flex-grow: 0; |
| 11833 flex-shrink: 0; |
| 11834 flex-basis: 70%; |
| 11835 } |
| 11836 |
| 11837 .flex-item-80-percent { |
| 11838 flex-grow: 0; |
| 11839 flex-shrink: 0; |
| 11840 flex-basis: 80%; |
| 11841 } |
| 11842 |
| 11843 .well { |
| 11844 min-height: 20px; |
| 11845 padding: 19px; |
| 11846 margin-bottom: 20px; |
| 11847 background-color: #f5f5f5; |
| 11848 border: 1px solid #e3e3e3; |
| 11849 border-radius: 4px; |
| 11850 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 11851 } |
| 11852 |
| 11853 .break-wrap { |
| 11854 word-wrap: break-word; |
| 11855 } |
| 11856 </style> |
| 11859 <nav-bar> | 11857 <nav-bar> |
| 11860 <top-nav-menu></top-nav-menu> | 11858 <top-nav-menu></top-nav-menu> |
| 11861 <isolate-nav-menu isolate="{{ profile.isolate }}"></isolate-nav-menu> | 11859 <isolate-nav-menu isolate="{{ instance.isolate }}"></isolate-nav-menu> |
| 11862 <nav-menu link="{{ profile.isolate.relativeHashLink('profile') }}" anchor=
"cpu profile" last="{{ true }}"></nav-menu> | 11860 <!-- TODO(turnidge): Add library nav menu here. --> |
| 11861 <class-nav-menu cls="{{ instance['class'] }}"></class-nav-menu> |
| 11862 <nav-menu link="." anchor="instance" last="{{ true }}"></nav-menu> |
| 11863 <nav-refresh callback="{{ refresh }}"></nav-refresh> | 11863 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 11864 </nav-bar> | 11864 </nav-bar> |
| 11865 |
| 11866 <template if="{{ instance['error'] != null }}"> |
| 11867 <error-view error_obj="{{ instance['error'] }}"></error-view> |
| 11868 </template> |
| 11869 |
| 11870 <template if="{{ instance['error'] == null }}"> |
| 11871 <div class="content"> |
| 11872 <!-- TODO(turnidge): Handle null instances. --> |
| 11873 <template if="{{ isType(instance.serviceType) }}"> |
| 11874 <h1>type {{ instance['user_name'] }}</h1> |
| 11875 </template> |
| 11876 <template if="{{ !isType(instance.serviceType) }}"> |
| 11877 <h1>instance of {{ instance['class']['user_name'] }}</h1> |
| 11878 </template> |
| 11879 <div class="memberList"> |
| 11880 <div class="memberItem"> |
| 11881 <div class="memberName">class</div> |
| 11882 <div class="memberValue"> |
| 11883 <class-ref ref="{{ instance['class'] }}"> |
| 11884 </class-ref> |
| 11885 </div> |
| 11886 </div> |
| 11887 <template if="{{ instance['valueAsString'] != null }}"> |
| 11888 <div class="memberItem"> |
| 11889 <div class="memberName">value</div> |
| 11890 <div class="memberValue">{{ instance['valueAsString'] }}</div> |
| 11891 </div> |
| 11892 </template> |
| 11893 <div class="memberItem"> |
| 11894 <div class="memberName">size</div> |
| 11895 <div class="memberValue">{{ instance['size'] | formatSize }}</div> |
| 11896 </div> |
| 11897 <div class="memberItem"> |
| 11898 <div class="memberName">retained size</div> |
| 11899 <div class="memberValue"> |
| 11900 <eval-link callback="{{ retainedSize }}" label="[calculate]"> |
| 11901 </eval-link> |
| 11902 </div> |
| 11903 </div> |
| 11904 <div class="memberItem"> |
| 11905 <div class="memberName">retaining path</div> |
| 11906 <div class="memberValue"> |
| 11907 <template if="{{ path == null }}"> |
| 11908 <eval-link callback="{{ retainingPath }}" label="[find]" expr="1
0"> |
| 11909 </eval-link> |
| 11910 </template> |
| 11911 <template if="{{ path != null }}"> |
| 11912 <template repeat="{{ element in path['elements'] }}"> |
| 11913 <div class="memberItem"> |
| 11914 <div class="memberName">[{{ element['index']}}]</div> |
| 11915 <div class="memberValue"> |
| 11916 <instance-ref ref="{{ element['value'] }}"></instance-ref> |
| 11917 </div> |
| 11918 </div> |
| 11919 </template> |
| 11920 <template if="{{ path['length'] > path['elements'].length }}"> |
| 11921 showing {{ path['elements'].length }} of {{ path['length'] }} |
| 11922 <eval-link callback="{{ retainingPath }}" label="[find more]"
expr="{{ path['elements'].length * 2 }}"> |
| 11923 </eval-link> |
| 11924 </template> |
| 11925 </template> |
| 11926 </div> |
| 11927 </div> |
| 11928 <template if="{{ instance['type_class'] != null }}"> |
| 11929 <div class="memberItem"> |
| 11930 <div class="memberName">type class</div> |
| 11931 <div class="memberValue"> |
| 11932 <class-ref ref="{{ instance['type_class'] }}"> |
| 11933 </class-ref> |
| 11934 </div> |
| 11935 </div> |
| 11936 </template> |
| 11937 <template if="{{ instance['closureFunc'] != null }}"> |
| 11938 <div class="memberItem"> |
| 11939 <div class="memberName">closure function</div> |
| 11940 <div class="memberValue"> |
| 11941 <function-ref ref="{{ instance['closureFunc'] }}"> |
| 11942 </function-ref> |
| 11943 </div> |
| 11944 </div> |
| 11945 </template> |
| 11946 |
| 11947 <div class="memberItem"> </div> |
| 11948 |
| 11949 <div class="memberItem"> |
| 11950 <div class="memberName">toString()</div> |
| 11951 <div class="memberValue"> |
| 11952 <eval-link callback="{{ eval }}" expr="toString()"></eval-link> |
| 11953 </div> |
| 11954 </div> |
| 11955 </div> |
| 11956 </div> |
| 11957 |
| 11958 <hr> |
| 11959 |
| 11960 <div class="content"> |
| 11961 <template if="{{ instance['fields'].isNotEmpty }}"> |
| 11962 fields ({{ instance['fields'].length }}) |
| 11963 <curly-block expand="{{ instance['fields'].length <= 8 }}"> |
| 11964 <div class="memberList"> |
| 11965 <template repeat="{{ field in instance['fields'] }}"> |
| 11966 <div class="memberItem"> |
| 11967 <div class="memberName"> |
| 11968 <field-ref ref="{{ field['decl'] }}"></field-ref> |
| 11969 </div> |
| 11970 <div class="memberValue"> |
| 11971 <instance-ref ref="{{ field['value'] }}"></instance-ref> |
| 11972 </div> |
| 11973 </div> |
| 11974 </template> |
| 11975 </div> |
| 11976 </curly-block><br><br> |
| 11977 </template> |
| 11978 |
| 11979 <template if="{{ instance['nativeFields'].isNotEmpty }}"> |
| 11980 native fields ({{ instance['nativeFields'].length }}) |
| 11981 <curly-block expand="{{ instance['nativeFields'].length <= 8 }}"> |
| 11982 <div class="memberList"> |
| 11983 <template repeat="{{ field in instance['nativeFields'] }}"> |
| 11984 <div class="memberItem"> |
| 11985 <div class="memberName">[{{ field['index']}}]</div> |
| 11986 <div class="memberValue">[{{ field['value']}}]</div> |
| 11987 </div> |
| 11988 </template> |
| 11989 </div> |
| 11990 </curly-block><br><br> |
| 11991 </template> |
| 11992 |
| 11993 <template if="{{ instance['elements'].isNotEmpty }}"> |
| 11994 elements ({{ instance['elements'].length }}) |
| 11995 <curly-block expand="{{ instance['elements'].length <= 8 }}"> |
| 11996 <div class="memberList"> |
| 11997 <template repeat="{{ element in instance['elements'] }}"> |
| 11998 <div class="memberItem"> |
| 11999 <div class="memberName">[{{ element['index']}}]</div> |
| 12000 <div class="memberValue"> |
| 12001 <instance-ref ref="{{ element['value'] }}"> |
| 12002 </instance-ref> |
| 12003 </div> |
| 12004 </div> |
| 12005 </template> |
| 12006 </div> |
| 12007 </curly-block><br><br> |
| 12008 </template> |
| 12009 </div> |
| 12010 |
| 12011 <hr> |
| 12012 |
| 12013 <div class="content"> |
| 12014 <eval-box callback="{{ eval }}"></eval-box> |
| 12015 </div> |
| 12016 <br><br><br><br> |
| 12017 <br><br><br><br> |
| 12018 |
| 12019 </template> |
| 12020 </template> |
| 12021 |
| 12022 </polymer-element> |
| 12023 |
| 12024 |
| 12025 <polymer-element name="json-view" extends="observatory-element"> |
| 12026 <template> |
| 12027 <nav-bar> |
| 12028 <top-nav-menu last="{{ true }}"></top-nav-menu> |
| 12029 </nav-bar> |
| 12030 <pre>{{ mapAsString }}</pre> |
| 12031 </template> |
| 12032 |
| 12033 </polymer-element> |
| 12034 |
| 12035 |
| 12036 |
| 12037 |
| 12038 |
| 12039 |
| 12040 |
| 12041 |
| 12042 |
| 12043 |
| 12044 |
| 12045 <polymer-element name="library-view" extends="observatory-element"> |
| 12046 <template> |
| 11865 <style> | 12047 <style> |
| 11866 .table { | 12048 /* Global styles */ |
| 11867 border-collapse: collapse!important; | 12049 * { |
| 11868 width: 100%; | 12050 margin: 0; |
| 11869 margin-bottom: 20px | 12051 padding: 0; |
| 11870 } | 12052 font: 400 14px 'Montserrat', sans-serif; |
| 11871 .table thead > tr > th, | 12053 color: #333; |
| 11872 .table tbody > tr > th, | 12054 box-sizing: border-box; |
| 11873 .table tfoot > tr > th, | 12055 } |
| 11874 .table thead > tr > td, | 12056 |
| 11875 .table tbody > tr > td, | 12057 .content { |
| 11876 .table tfoot > tr > td { | 12058 padding-left: 10%; |
| 11877 padding: 8px; | 12059 font: 400 14px 'Montserrat', sans-serif; |
| 11878 vertical-align: top; | 12060 } |
| 11879 } | 12061 |
| 11880 .table thead > tr > th { | 12062 .content-centered { |
| 11881 vertical-align: bottom; | 12063 padding-left: 10%; |
| 11882 text-align: left; | 12064 padding-right: 10%; |
| 11883 border-bottom:2px solid #ddd; | 12065 font: 400 14px 'Montserrat', sans-serif; |
| 11884 } | 12066 } |
| 11885 | 12067 |
| 11886 tr:hover > td { | 12068 h1 { |
| 11887 background-color: #FFF3E3; | 12069 font: 400 18px 'Montserrat', sans-serif; |
| 11888 } | 12070 } |
| 11889 .rowColor0 { | 12071 |
| 11890 background-color: #FFE9CC; | 12072 .memberList { |
| 11891 } | 12073 display: table; |
| 11892 .rowColor1 { | 12074 } |
| 11893 background-color: #FFDEB2; | 12075 |
| 11894 } | 12076 .memberItem { |
| 11895 .rowColor2 { | 12077 display: table-row; |
| 11896 background-color: #FFD399; | 12078 } |
| 11897 } | 12079 |
| 11898 .rowColor3 { | 12080 .memberName, .memberValue { |
| 11899 background-color: #FFC87F; | 12081 display: table-cell; |
| 11900 } | 12082 vertical-align: top; |
| 11901 .rowColor4 { | 12083 padding: 3px 0 3px 1em; |
| 11902 background-color: #FFBD66; | 12084 font: 400 14px 'Montserrat', sans-serif; |
| 11903 } | 12085 } |
| 11904 .rowColor5 { | 12086 |
| 11905 background-color: #FFB24C; | 12087 .monospace { |
| 11906 } | 12088 font-family: consolas, courier, monospace; |
| 11907 .rowColor6 { | 12089 font-size: 1em; |
| 11908 background-color: #FFA733; | 12090 line-height: 1.2em; |
| 11909 } | 12091 white-space: nowrap; |
| 11910 .rowColor7 { | 12092 } |
| 11911 background-color: #FF9C19; | 12093 |
| 11912 } | 12094 a { |
| 11913 .rowColor8 { | 12095 color: #0489c3; |
| 11914 background-color: #FF9100; | 12096 text-decoration: none; |
| 11915 } | 12097 } |
| 11916 | 12098 |
| 11917 .tooltip { | 12099 a:hover { |
| 11918 display: block; | 12100 text-decoration: underline; |
| 11919 position: absolute; | 12101 } |
| 11920 visibility: hidden; | 12102 |
| 11921 opacity: 0; | 12103 em { |
| 11922 transition: visibility 0s linear 0.5s; | 12104 color: inherit; |
| 11923 transition: opacity .4s ease-in-out; | 12105 font-style: italic; |
| 11924 } | 12106 } |
| 11925 | 12107 |
| 11926 tr:hover .tooltip { | 12108 b { |
| 11927 display: block; | 12109 color: inherit; |
| 11928 position: absolute; | 12110 font-weight: bold; |
| 11929 top: 100%; | 12111 } |
| 11930 right: 100%; | 12112 |
| 11931 visibility: visible; | 12113 hr { |
| 11932 z-index: 999; | 12114 margin-top: 20px; |
| 11933 width: 400px; | 12115 margin-bottom: 20px; |
| 11934 color: #ffffff; | 12116 border: 0; |
| 11935 background-color: #0489c3; | 12117 border-top: 1px solid #eee; |
| 11936 border-top-right-radius: 8px; | 12118 height: 0; |
| 11937 border-top-left-radius: 8px; | 12119 box-sizing: content-box; |
| 11938 border-bottom-right-radius: 8px; | 12120 } |
| 11939 border-bottom-left-radius: 8px; | 12121 |
| 11940 transition: visibility 0s linear 0.5s; | 12122 .list-group { |
| 11941 transition: opacity .4s ease-in-out; | 12123 padding-left: 0; |
| 11942 opacity: 1; | 12124 margin-bottom: 20px; |
| 11943 } | 12125 } |
| 11944 | 12126 |
| 11945 .white { | 12127 .list-group-item { |
| 11946 color: #ffffff; | 12128 position: relative; |
| 11947 } | 12129 display: block; |
| 11948 | 12130 padding: 10px 15px; |
| 11949 </style> | 12131 margin-bottom: -1px; |
| 12132 background-color: #fff; |
| 12133 } |
| 12134 |
| 12135 .list-group-item:first-child { |
| 12136 /* rounded top corners */ |
| 12137 border-top-right-radius:4px; |
| 12138 border-top-left-radius:4px; |
| 12139 } |
| 12140 |
| 12141 .list-group-item:last-child { |
| 12142 margin-bottom: 0; |
| 12143 /* rounded bottom corners */ |
| 12144 border-bottom-right-radius: 4px; |
| 12145 border-bottom-left-radius:4px; |
| 12146 } |
| 12147 |
| 12148 /* Flex row container */ |
| 12149 .flex-row { |
| 12150 display: flex; |
| 12151 flex-direction: row; |
| 12152 } |
| 12153 |
| 12154 /* Flex column container */ |
| 12155 .flex-column { |
| 12156 display: flex; |
| 12157 flex-direction: column; |
| 12158 } |
| 12159 |
| 12160 .flex-item-fit { |
| 12161 flex-grow: 1; |
| 12162 flex-shrink: 1; |
| 12163 flex-basis: auto; |
| 12164 } |
| 12165 |
| 12166 .flex-item-no-shrink { |
| 12167 flex-grow: 0; |
| 12168 flex-shrink: 0; |
| 12169 flex-basis: auto; |
| 12170 } |
| 12171 |
| 12172 .flex-item-fill { |
| 12173 flex-grow: 0; |
| 12174 flex-shrink: 1; /* shrink when pressured */ |
| 12175 flex-basis: 100%; /* try and take 100% */ |
| 12176 } |
| 12177 |
| 12178 .flex-item-fixed-1-12 { |
| 12179 flex-grow: 0; |
| 12180 flex-shrink: 0; |
| 12181 flex-basis: 8.3%; |
| 12182 } |
| 12183 |
| 12184 .flex-item-fixed-2-12 { |
| 12185 flex-grow: 0; |
| 12186 flex-shrink: 0; |
| 12187 flex-basis: 16.6%; |
| 12188 } |
| 12189 |
| 12190 .flex-item-fixed-4-12 { |
| 12191 flex-grow: 0; |
| 12192 flex-shrink: 0; |
| 12193 flex-basis: 33.3333%; |
| 12194 } |
| 12195 |
| 12196 .flex-item-fixed-6-12, .flex-item-50-percent { |
| 12197 flex-grow: 0; |
| 12198 flex-shrink: 0; |
| 12199 flex-basis: 50%; |
| 12200 } |
| 12201 |
| 12202 .flex-item-fixed-8-12 { |
| 12203 flex-grow: 0; |
| 12204 flex-shrink: 0; |
| 12205 flex-basis: 66.6666%; |
| 12206 } |
| 12207 |
| 12208 .flex-item-fixed-9-12 { |
| 12209 flex-grow: 0; |
| 12210 flex-shrink: 0; |
| 12211 flex-basis: 75%; |
| 12212 } |
| 12213 |
| 12214 |
| 12215 .flex-item-fixed-12-12 { |
| 12216 flex-grow: 0; |
| 12217 flex-shrink: 0; |
| 12218 flex-basis: 100%; |
| 12219 } |
| 12220 |
| 12221 .flex-item-10-percent { |
| 12222 flex-grow: 0; |
| 12223 flex-shrink: 0; |
| 12224 flex-basis: 10%; |
| 12225 } |
| 12226 |
| 12227 .flex-item-15-percent { |
| 12228 flex-grow: 0; |
| 12229 flex-shrink: 0; |
| 12230 flex-basis: 15%; |
| 12231 } |
| 12232 |
| 12233 .flex-item-20-percent { |
| 12234 flex-grow: 0; |
| 12235 flex-shrink: 0; |
| 12236 flex-basis: 20%; |
| 12237 } |
| 12238 |
| 12239 .flex-item-30-percent { |
| 12240 flex-grow: 0; |
| 12241 flex-shrink: 0; |
| 12242 flex-basis: 30%; |
| 12243 } |
| 12244 |
| 12245 .flex-item-40-percent { |
| 12246 flex-grow: 0; |
| 12247 flex-shrink: 0; |
| 12248 flex-basis: 40%; |
| 12249 } |
| 12250 |
| 12251 .flex-item-60-percent { |
| 12252 flex-grow: 0; |
| 12253 flex-shrink: 0; |
| 12254 flex-basis: 60%; |
| 12255 } |
| 12256 |
| 12257 .flex-item-70-percent { |
| 12258 flex-grow: 0; |
| 12259 flex-shrink: 0; |
| 12260 flex-basis: 70%; |
| 12261 } |
| 12262 |
| 12263 .flex-item-80-percent { |
| 12264 flex-grow: 0; |
| 12265 flex-shrink: 0; |
| 12266 flex-basis: 80%; |
| 12267 } |
| 12268 |
| 12269 .well { |
| 12270 min-height: 20px; |
| 12271 padding: 19px; |
| 12272 margin-bottom: 20px; |
| 12273 background-color: #f5f5f5; |
| 12274 border: 1px solid #e3e3e3; |
| 12275 border-radius: 4px; |
| 12276 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 12277 } |
| 12278 |
| 12279 .break-wrap { |
| 12280 word-wrap: break-word; |
| 12281 } |
| 12282 </style> |
| 12283 |
| 12284 <nav-bar> |
| 12285 <top-nav-menu></top-nav-menu> |
| 12286 <isolate-nav-menu isolate="{{ library.isolate }}"></isolate-nav-menu> |
| 12287 <library-nav-menu library="{{ library }}" last="{{ true }}"></library-nav-
menu> |
| 12288 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 12289 </nav-bar> |
| 12290 |
| 11950 <div class="content"> | 12291 <div class="content"> |
| 11951 <h1>Sampled CPU profile</h1> | 12292 <h1> |
| 12293 <!-- TODO(turnidge): Handle unnamed libraries --> |
| 12294 library {{ library.name }} |
| 12295 </h1> |
| 11952 <div class="memberList"> | 12296 <div class="memberList"> |
| 11953 <div class="memberItem"> | 12297 <div class="memberItem"> |
| 11954 <div class="memberName">Timestamp</div> | 12298 <div class="memberName">url</div> |
| 11955 <div class="memberValue">{{ refreshTime }}</div> | 12299 <div class="memberValue">{{ library.url }}</div> |
| 11956 </div> | 12300 </div> |
| 11957 <div class="memberItem"> | 12301 <template if="{{ library.name != library.vmName }}"> |
| 11958 <div class="memberName">Time span</div> | 12302 <div class="memberItem"> |
| 11959 <div class="memberValue">{{ timeSpan }}</div> | 12303 <div class="memberName">vm name</div> |
| 11960 </div> | 12304 <div class="memberValue">{{ library.vmName }}</div> |
| 11961 <div class="memberItem"> | 12305 </div> |
| 11962 <div class="memberName">Sample count</div> | 12306 </template> |
| 11963 <div class="memberValue">{{ sampleCount }}</div> | |
| 11964 </div> | |
| 11965 <div class="memberItem"> | |
| 11966 <div class="memberName">Sample rate</div> | |
| 11967 <div class="memberValue">{{ sampleRate }} Hz</div> | |
| 11968 </div> | |
| 11969 <div class="memberItem"> | |
| 11970 <div class="memberName">Sample depth</div> | |
| 11971 <div class="memberValue">{{ sampleDepth }} stack frames</div> | |
| 11972 </div> | |
| 11973 <div class="memberItem"> | |
| 11974 <div class="memberName">Display cutoff</div> | |
| 11975 <div class="memberValue">{{ displayCutoff }}</div> | |
| 11976 </div> | |
| 11977 <div class="memberItem"> | |
| 11978 <div class="memberName">Tags</div> | |
| 11979 <div class="memberValue"> | |
| 11980 <select value="{{tagSelector}}"> | |
| 11981 <option value="uv">User > VM</option> | |
| 11982 <option value="u">User</option> | |
| 11983 <option value="vu">VM > User</option> | |
| 11984 <option value="v">VM</option> | |
| 11985 <option value="hide">None</option> | |
| 11986 </select> | |
| 11987 </div> | |
| 11988 </div> | |
| 11989 </div> | 12307 </div> |
| 11990 <hr> | 12308 </div> |
| 11991 <table id="tableTree" class="table"> | 12309 |
| 11992 <thead> | 12310 <hr> |
| 11993 <tr> | 12311 |
| 11994 <th>Method</th> | 12312 <div class="content"> |
| 11995 <th>Self</th> | 12313 <template if="{{ library.imports.isNotEmpty }}"> |
| 11996 </tr> | 12314 imports ({{ library.imports.length }}) |
| 11997 </thead> | 12315 <curly-block expand="{{ library.imports.length <= 8 }}"> |
| 11998 <tbody> | 12316 <div class="memberList"> |
| 11999 <tr template="" repeat="{{row in tree.rows }}" style="{{}}"> | 12317 <template repeat="{{ imp in library.imports }}"> |
| 12000 <td on-click="{{toggleExpanded}}" class="{{ coloring(row) }}" style=
"{{ padding(row) }}"> | 12318 <div class="memberItem"> |
| 12001 <span id="expand" style="{{ row.expanderStyle }}">{{ row.expander
}}</span> | 12319 <div class="memberValue"> |
| 12002 <div style="position: relative;display: inline"> | 12320 <library-ref ref="{{ imp }}"></library-ref> |
| 12003 {{row.columns[0]}} | |
| 12004 </div> | |
| 12005 <code-ref ref="{{ row.code }}"></code-ref> | |
| 12006 </td> | |
| 12007 <td class="{{ coloring(row) }}" style="position: relative"> | |
| 12008 {{row.columns[1]}} | |
| 12009 <div class="tooltip"> | |
| 12010 <div class="memberList"> | |
| 12011 <div class="memberItem"> | |
| 12012 <div class="memberName white">Kind</div> | |
| 12013 <div class="memberValue white">{{ row.tipKind }}</div> | |
| 12014 </div> | |
| 12015 <div class="memberItem"> | |
| 12016 <div class="memberName white">Percent of Parent</div> | |
| 12017 <div class="memberValue white">{{ row.tipParent }}</div> | |
| 12018 </div> | |
| 12019 <div class="memberItem"> | |
| 12020 <div class="memberName white">Sample Count</div> | |
| 12021 <div class="memberValue white">{{ row.tipTicks }} ({{ row.tip
Exclusive }})</div> | |
| 12022 </div> | |
| 12023 <div class="memberItem"> | |
| 12024 <div class="memberName white">Approximate Execution Time</div
> | |
| 12025 <div class="memberValue white">{{ row.tipTime }}</div> | |
| 12026 </div> | |
| 12027 </div> | 12321 </div> |
| 12028 </div> | 12322 </div> |
| 12029 </td> | 12323 </template> |
| 12030 </tr> | 12324 </div> |
| 12031 </tbody> | 12325 </curly-block><br> |
| 12032 </table> | 12326 <br> |
| 12033 </div> | 12327 </template> |
| 12328 |
| 12329 <template if="{{ library.scripts.isNotEmpty }}"> |
| 12330 scripts ({{ library.scripts.length }}) |
| 12331 <curly-block expand="{{ library.scripts.length <= 8 }}"> |
| 12332 <div class="memberList"> |
| 12333 <template repeat="{{ script in library.scripts }}"> |
| 12334 <div class="memberItem"> |
| 12335 <div class="memberValue"> |
| 12336 <script-ref ref="{{ script }}"></script-ref> |
| 12337 </div> |
| 12338 </div> |
| 12339 </template> |
| 12340 </div> |
| 12341 </curly-block><br> |
| 12342 <br> |
| 12343 </template> |
| 12344 |
| 12345 <template if="{{ library.classes.isNotEmpty }}"> |
| 12346 classes ({{ library.classes.length }}) |
| 12347 <curly-block expand="{{ library.classes.length <= 8 }}"> |
| 12348 <div class="memberList"> |
| 12349 <template repeat="{{ cls in library.classes }}"> |
| 12350 <div class="memberItem"> |
| 12351 <div class="memberValue"> |
| 12352 <class-ref ref="{{ cls }}"></class-ref> |
| 12353 </div> |
| 12354 </div> |
| 12355 </template> |
| 12356 </div> |
| 12357 </curly-block><br> |
| 12358 <br> |
| 12359 </template> |
| 12360 |
| 12361 <template if="{{ library.variables.isNotEmpty }}"> |
| 12362 variables ({{ library.variables.length }}) |
| 12363 <curly-block expand="{{ library.variables.length <= 8 }}"> |
| 12364 <div class="memberList"> |
| 12365 <template repeat="{{ field in library.variables }}"> |
| 12366 <div class="memberItem"> |
| 12367 <div class="memberName"> |
| 12368 <field-ref ref="{{ field }}"></field-ref> |
| 12369 </div> |
| 12370 <div class="memberValue"> |
| 12371 <template if="{{ field['value'] != null }}"> |
| 12372 <instance-ref ref="{{ field['value'] }}"></instance-ref> |
| 12373 </template> |
| 12374 </div> |
| 12375 </div> |
| 12376 </template> |
| 12377 </div> |
| 12378 </curly-block><br> |
| 12379 <br> |
| 12380 </template> |
| 12381 |
| 12382 <template if="{{ library.functions.isNotEmpty }}"> |
| 12383 functions ({{ library.functions.length }}) |
| 12384 <curly-block expand="{{ library.functions.length <= 8 }}"> |
| 12385 <div class="memberList"> |
| 12386 <template repeat="{{ function in library.functions }}"> |
| 12387 <div class="memberItem"> |
| 12388 <div class="memberValue"> |
| 12389 <function-ref ref="{{ function }}"></function-ref> |
| 12390 </div> |
| 12391 </div> |
| 12392 </template> |
| 12393 </div> |
| 12394 </curly-block><br> |
| 12395 <br> |
| 12396 </template> |
| 12397 </div> |
| 12398 |
| 12399 <hr> |
| 12400 |
| 12401 <div class="content"> |
| 12402 <eval-box callback="{{ eval }}"></eval-box> |
| 12403 </div> |
| 12404 <br><br><br><br> |
| 12405 <br><br><br><br> |
| 12034 </template> | 12406 </template> |
| 12035 | 12407 |
| 12036 </polymer-element> | 12408 </polymer-element> |
| 12037 | 12409 |
| 12038 | 12410 |
| 12039 | 12411 |
| 12040 | 12412 |
| 12041 <polymer-element name="script-view" extends="observatory-element"> | 12413 |
| 12414 |
| 12415 |
| 12416 |
| 12417 |
| 12418 |
| 12419 |
| 12420 |
| 12421 |
| 12422 |
| 12423 |
| 12424 |
| 12425 |
| 12426 |
| 12427 |
| 12428 |
| 12429 |
| 12430 |
| 12431 |
| 12432 |
| 12433 |
| 12434 |
| 12435 <polymer-element name="heap-profile" extends="observatory-element"> |
| 12042 <template> | 12436 <template> |
| 12043 <style> | 12437 <style> |
| 12044 /* Global styles */ | 12438 /* Global styles */ |
| 12045 * { | 12439 * { |
| 12046 margin: 0; | 12440 margin: 0; |
| 12441 padding: 0; |
| 12442 font: 400 14px 'Montserrat', sans-serif; |
| 12443 color: #333; |
| 12444 box-sizing: border-box; |
| 12445 } |
| 12446 |
| 12447 .content { |
| 12448 padding-left: 10%; |
| 12449 font: 400 14px 'Montserrat', sans-serif; |
| 12450 } |
| 12451 |
| 12452 .content-centered { |
| 12453 padding-left: 10%; |
| 12454 padding-right: 10%; |
| 12455 font: 400 14px 'Montserrat', sans-serif; |
| 12456 } |
| 12457 |
| 12458 h1 { |
| 12459 font: 400 18px 'Montserrat', sans-serif; |
| 12460 } |
| 12461 |
| 12462 .memberList { |
| 12463 display: table; |
| 12464 } |
| 12465 |
| 12466 .memberItem { |
| 12467 display: table-row; |
| 12468 } |
| 12469 |
| 12470 .memberName, .memberValue { |
| 12471 display: table-cell; |
| 12472 vertical-align: top; |
| 12473 padding: 3px 0 3px 1em; |
| 12474 font: 400 14px 'Montserrat', sans-serif; |
| 12475 } |
| 12476 |
| 12477 .monospace { |
| 12478 font-family: consolas, courier, monospace; |
| 12479 font-size: 1em; |
| 12480 line-height: 1.2em; |
| 12481 white-space: nowrap; |
| 12482 } |
| 12483 |
| 12484 a { |
| 12485 color: #0489c3; |
| 12486 text-decoration: none; |
| 12487 } |
| 12488 |
| 12489 a:hover { |
| 12490 text-decoration: underline; |
| 12491 } |
| 12492 |
| 12493 em { |
| 12494 color: inherit; |
| 12495 font-style: italic; |
| 12496 } |
| 12497 |
| 12498 b { |
| 12499 color: inherit; |
| 12500 font-weight: bold; |
| 12501 } |
| 12502 |
| 12503 hr { |
| 12504 margin-top: 20px; |
| 12505 margin-bottom: 20px; |
| 12506 border: 0; |
| 12507 border-top: 1px solid #eee; |
| 12508 height: 0; |
| 12509 box-sizing: content-box; |
| 12510 } |
| 12511 |
| 12512 .list-group { |
| 12513 padding-left: 0; |
| 12514 margin-bottom: 20px; |
| 12515 } |
| 12516 |
| 12517 .list-group-item { |
| 12518 position: relative; |
| 12519 display: block; |
| 12520 padding: 10px 15px; |
| 12521 margin-bottom: -1px; |
| 12522 background-color: #fff; |
| 12523 } |
| 12524 |
| 12525 .list-group-item:first-child { |
| 12526 /* rounded top corners */ |
| 12527 border-top-right-radius:4px; |
| 12528 border-top-left-radius:4px; |
| 12529 } |
| 12530 |
| 12531 .list-group-item:last-child { |
| 12532 margin-bottom: 0; |
| 12533 /* rounded bottom corners */ |
| 12534 border-bottom-right-radius: 4px; |
| 12535 border-bottom-left-radius:4px; |
| 12536 } |
| 12537 |
| 12538 /* Flex row container */ |
| 12539 .flex-row { |
| 12540 display: flex; |
| 12541 flex-direction: row; |
| 12542 } |
| 12543 |
| 12544 /* Flex column container */ |
| 12545 .flex-column { |
| 12546 display: flex; |
| 12547 flex-direction: column; |
| 12548 } |
| 12549 |
| 12550 .flex-item-fit { |
| 12551 flex-grow: 1; |
| 12552 flex-shrink: 1; |
| 12553 flex-basis: auto; |
| 12554 } |
| 12555 |
| 12556 .flex-item-no-shrink { |
| 12557 flex-grow: 0; |
| 12558 flex-shrink: 0; |
| 12559 flex-basis: auto; |
| 12560 } |
| 12561 |
| 12562 .flex-item-fill { |
| 12563 flex-grow: 0; |
| 12564 flex-shrink: 1; /* shrink when pressured */ |
| 12565 flex-basis: 100%; /* try and take 100% */ |
| 12566 } |
| 12567 |
| 12568 .flex-item-fixed-1-12 { |
| 12569 flex-grow: 0; |
| 12570 flex-shrink: 0; |
| 12571 flex-basis: 8.3%; |
| 12572 } |
| 12573 |
| 12574 .flex-item-fixed-2-12 { |
| 12575 flex-grow: 0; |
| 12576 flex-shrink: 0; |
| 12577 flex-basis: 16.6%; |
| 12578 } |
| 12579 |
| 12580 .flex-item-fixed-4-12 { |
| 12581 flex-grow: 0; |
| 12582 flex-shrink: 0; |
| 12583 flex-basis: 33.3333%; |
| 12584 } |
| 12585 |
| 12586 .flex-item-fixed-6-12, .flex-item-50-percent { |
| 12587 flex-grow: 0; |
| 12588 flex-shrink: 0; |
| 12589 flex-basis: 50%; |
| 12590 } |
| 12591 |
| 12592 .flex-item-fixed-8-12 { |
| 12593 flex-grow: 0; |
| 12594 flex-shrink: 0; |
| 12595 flex-basis: 66.6666%; |
| 12596 } |
| 12597 |
| 12598 .flex-item-fixed-9-12 { |
| 12599 flex-grow: 0; |
| 12600 flex-shrink: 0; |
| 12601 flex-basis: 75%; |
| 12602 } |
| 12603 |
| 12604 |
| 12605 .flex-item-fixed-12-12 { |
| 12606 flex-grow: 0; |
| 12607 flex-shrink: 0; |
| 12608 flex-basis: 100%; |
| 12609 } |
| 12610 |
| 12611 .flex-item-10-percent { |
| 12612 flex-grow: 0; |
| 12613 flex-shrink: 0; |
| 12614 flex-basis: 10%; |
| 12615 } |
| 12616 |
| 12617 .flex-item-15-percent { |
| 12618 flex-grow: 0; |
| 12619 flex-shrink: 0; |
| 12620 flex-basis: 15%; |
| 12621 } |
| 12622 |
| 12623 .flex-item-20-percent { |
| 12624 flex-grow: 0; |
| 12625 flex-shrink: 0; |
| 12626 flex-basis: 20%; |
| 12627 } |
| 12628 |
| 12629 .flex-item-30-percent { |
| 12630 flex-grow: 0; |
| 12631 flex-shrink: 0; |
| 12632 flex-basis: 30%; |
| 12633 } |
| 12634 |
| 12635 .flex-item-40-percent { |
| 12636 flex-grow: 0; |
| 12637 flex-shrink: 0; |
| 12638 flex-basis: 40%; |
| 12639 } |
| 12640 |
| 12641 .flex-item-60-percent { |
| 12642 flex-grow: 0; |
| 12643 flex-shrink: 0; |
| 12644 flex-basis: 60%; |
| 12645 } |
| 12646 |
| 12647 .flex-item-70-percent { |
| 12648 flex-grow: 0; |
| 12649 flex-shrink: 0; |
| 12650 flex-basis: 70%; |
| 12651 } |
| 12652 |
| 12653 .flex-item-80-percent { |
| 12654 flex-grow: 0; |
| 12655 flex-shrink: 0; |
| 12656 flex-basis: 80%; |
| 12657 } |
| 12658 |
| 12659 .well { |
| 12660 min-height: 20px; |
| 12661 padding: 19px; |
| 12662 margin-bottom: 20px; |
| 12663 background-color: #f5f5f5; |
| 12664 border: 1px solid #e3e3e3; |
| 12665 border-radius: 4px; |
| 12666 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 12667 } |
| 12668 |
| 12669 .break-wrap { |
| 12670 word-wrap: break-word; |
| 12671 } |
| 12672 </style> |
| 12673 <style> |
| 12674 .table { |
| 12675 border-collapse: collapse!important; |
| 12676 width: 100%; |
| 12677 margin-bottom: 20px |
| 12678 table-layout: fixed; |
| 12679 } |
| 12680 .table td:nth-of-type(1) { |
| 12681 width: 30%; |
| 12682 } |
| 12683 .th, .td { |
| 12684 padding: 8px; |
| 12685 vertical-align: top; |
| 12686 } |
| 12687 .table thead > tr > th { |
| 12688 vertical-align: bottom; |
| 12689 text-align: left; |
| 12690 border-bottom:2px solid #ddd; |
| 12691 } |
| 12692 .clickable { |
| 12693 color: #0489c3; |
| 12694 text-decoration: none; |
| 12695 cursor: pointer; |
| 12696 } |
| 12697 .clickable:hover { |
| 12698 text-decoration: underline; |
| 12699 cursor: pointer; |
| 12700 } |
| 12701 #classtable tr:hover > td { |
| 12702 background-color: #F4C7C3; |
| 12703 } |
| 12704 </style> |
| 12705 <nav-bar> |
| 12706 <top-nav-menu></top-nav-menu> |
| 12707 <isolate-nav-menu isolate="{{ profile.isolate }}"></isolate-nav-menu> |
| 12708 <nav-menu link="{{ profile.isolate.relativeHashLink('allocationprofile') }}"
anchor="heap profile" last="{{ true }}"></nav-menu> |
| 12709 <nav-refresh callback="{{ resetAccumulator }}" label="Reset Accumulator"></n
av-refresh> |
| 12710 <nav-refresh callback="{{ refreshGC }}" label="GC"></nav-refresh> |
| 12711 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 12712 </nav-bar> |
| 12713 |
| 12714 <div class="flex-row"> |
| 12715 <div id="newPieChart" class="flex-item-fixed-4-12" style="height: 400px"> |
| 12716 </div> |
| 12717 <div id="newStatus" class="flex-item-fixed-2-12"> |
| 12718 <div class="memberList"> |
| 12719 <div class="memberItem"> |
| 12720 <div class="memberName">Collections</div> |
| 12721 <div class="memberValue">{{ formattedCollections(true) }}</div> |
| 12722 </div> |
| 12723 <div class="memberItem"> |
| 12724 <div class="memberName">Average Collection Time</div> |
| 12725 <div class="memberValue">{{ formattedAverage(true) }}</div> |
| 12726 </div> |
| 12727 <div class="memberItem"> |
| 12728 <div class="memberName">Cumulative Collection Time</div> |
| 12729 <div class="memberValue">{{ formattedTotalCollectionTime(true) }}</d
iv> |
| 12730 </div> |
| 12731 </div> |
| 12732 </div> |
| 12733 <div id="oldPieChart" class="flex-item-fixed-4-12" style="height: 400px"> |
| 12734 </div> |
| 12735 <div id="oldStatus" class="flex-item-fixed-2-12"> |
| 12736 <div class="memberList"> |
| 12737 <div class="memberItem"> |
| 12738 <div class="memberName">Collections</div> |
| 12739 <div class="memberValue">{{ formattedCollections(false) }}</div> |
| 12740 </div> |
| 12741 <div class="memberItem"> |
| 12742 <div class="memberName">Average Collection Time</div> |
| 12743 <div class="memberValue">{{ formattedAverage(false) }}</div> |
| 12744 </div> |
| 12745 <div class="memberItem"> |
| 12746 <div class="memberName">Cumulative Collection Time</div> |
| 12747 <div class="memberValue">{{ formattedTotalCollectionTime(false) }}</
div> |
| 12748 </div> |
| 12749 </div> |
| 12750 </div> |
| 12751 </div> |
| 12752 <div class="flex-row"> |
| 12753 <table id="classtable" class="flex-item-fixed-12-12 table"> |
| 12754 <thead> |
| 12755 <tr> |
| 12756 <th on-click="{{changeSort}}" class="clickable" title="Class">{{ class
Table.getColumnLabel(0) }}</th> |
| 12757 <th on-click="{{changeSort}}" class="clickable" title="New Accumulated
Size">{{ classTable.getColumnLabel(1) }}</th> |
| 12758 <th on-click="{{changeSort}}" class="clickable" title="New Accumulated
Instances">{{ classTable.getColumnLabel(2) }}</th> |
| 12759 <th on-click="{{changeSort}}" class="clickable" title="New Current Siz
e">{{ classTable.getColumnLabel(3) }}</th> |
| 12760 <th on-click="{{changeSort}}" class="clickable" title="New Current Ins
tances">{{ classTable.getColumnLabel(4) }}</th> |
| 12761 <th on-click="{{changeSort}}" class="clickable" title="Old Accumulated
Size">{{ classTable.getColumnLabel(5) }}</th> |
| 12762 <th on-click="{{changeSort}}" class="clickable" title="Old Accumulated
Instances">{{ classTable.getColumnLabel(6) }}</th> |
| 12763 <th on-click="{{changeSort}}" class="clickable" title="Old Current Siz
e">{{ classTable.getColumnLabel(7) }}</th> |
| 12764 <th on-click="{{changeSort}}" class="clickable" title="Old Current Ins
tances">{{ classTable.getColumnLabel(8) }}</th> |
| 12765 </tr> |
| 12766 </thead> |
| 12767 <tbody> |
| 12768 <tr template="" repeat="{{row in classTable.sortedRows }}"> |
| 12769 <td><class-ref ref="{{ classTable.getValue(row, 0) }}"></class-ref></t
d> |
| 12770 <td title="{{ classTable.getValue(row, 1) }}">{{ classTable.getFormatt
edValue(row, 1) }}</td> |
| 12771 <td title="{{ classTable.getValue(row, 2) }}">{{ classTable.getFormatt
edValue(row, 2) }}</td> |
| 12772 <td title="{{ classTable.getValue(row, 3) }}">{{ classTable.getFormatt
edValue(row, 3) }}</td> |
| 12773 <td title="{{ classTable.getValue(row, 4) }}">{{ classTable.getFormatt
edValue(row, 4) }}</td> |
| 12774 <td title="{{ classTable.getValue(row, 5) }}">{{ classTable.getFormatt
edValue(row, 5) }}</td> |
| 12775 <td title="{{ classTable.getValue(row, 6) }}">{{ classTable.getFormatt
edValue(row, 6) }}</td> |
| 12776 <td title="{{ classTable.getValue(row, 7) }}">{{ classTable.getFormatt
edValue(row, 7) }}</td> |
| 12777 <td title="{{ classTable.getValue(row, 8) }}">{{ classTable.getFormatt
edValue(row, 8) }}</td> |
| 12778 </tr> |
| 12779 </tbody> |
| 12780 </table> |
| 12781 </div> |
| 12782 </template> |
| 12783 |
| 12784 </polymer-element> |
| 12785 |
| 12786 |
| 12787 |
| 12788 |
| 12789 |
| 12790 |
| 12791 <polymer-element name="sliding-checkbox"> |
| 12792 <template> |
| 12793 <style> |
| 12794 .switch { |
| 12795 position: relative; |
| 12796 width: 121px; |
| 12797 -webkit-user-select: none; |
| 12798 -moz-user-select: none; |
| 12799 -ms-user-select: none; |
| 12800 } |
| 12801 .hide { |
| 12802 display: none; |
| 12803 } |
| 12804 .label { |
| 12805 display: block; |
| 12806 overflow: hidden; |
| 12807 cursor: pointer; |
| 12808 border: 2px solid #999999; |
| 12809 border-radius: 15px; |
| 12810 } |
| 12811 .content { |
| 12812 width: 200%; |
| 12813 margin-left: -100%; |
| 12814 -moz-transition: margin 0.3s ease-in 0s; |
| 12815 -webkit-transition: margin 0.3s ease-in 0s; |
| 12816 -o-transition: margin 0.3s ease-in 0s; |
| 12817 transition: margin 0.3s ease-in 0s; |
| 12818 } |
| 12819 .content:before, .content:after { |
| 12820 float: left; |
| 12821 width: 50%; |
| 12822 height: 30px; |
| 12823 padding: 0; |
| 12824 line-height: 30px; |
| 12825 color: white; |
| 12826 font: 400 14px 'Montserrat', sans-serif; |
| 12827 -moz-box-sizing: border-box; |
| 12828 -webkit-box-sizing: border-box; |
| 12829 box-sizing: border-box; |
| 12830 } |
| 12831 .content:before { |
| 12832 content: {{ checkedText }}; |
| 12833 padding-left: 10px; |
| 12834 background-color: #0489C3; |
| 12835 } |
| 12836 .content:after { |
| 12837 content: {{ uncheckedText }}; |
| 12838 padding-right: 10px; |
| 12839 background-color: #EEEEEE; |
| 12840 color: #999999; |
| 12841 text-align: right; |
| 12842 } |
| 12843 .dot { |
| 12844 width: 14px; |
| 12845 margin: 8px; |
| 12846 background: #FFFFFF; |
| 12847 border: 2px solid #999999; |
| 12848 border-radius: 15px; |
| 12849 position: absolute; |
| 12850 top: 0; |
| 12851 bottom: 0; |
| 12852 right: 87px; |
| 12853 -moz-transition: all 0.3s ease-in 0s; |
| 12854 -webkit-transition: all 0.3s ease-in 0s; |
| 12855 -o-transition: all 0.3s ease-in 0s; |
| 12856 transition: all 0.3s ease-in 0s; |
| 12857 } |
| 12858 :checked + .label .content { |
| 12859 margin-left: 0; |
| 12860 } |
| 12861 :checked + .label .dot { |
| 12862 right: 0px; |
| 12863 } |
| 12864 </style> |
| 12865 <div class="switch"> |
| 12866 <input type="checkbox" class="hide" id="slide-switch" on-change="{{ change
}}"> |
| 12867 <label class="label" for="slide-switch"> |
| 12868 <div class="content"></div> |
| 12869 <div class="dot"></div> |
| 12870 </label> |
| 12871 </div> |
| 12872 </template> |
| 12873 |
| 12874 </polymer-element> |
| 12875 <polymer-element name="isolate-profile" extends="observatory-element"> |
| 12876 <template> |
| 12877 <style> |
| 12878 /* Global styles */ |
| 12879 * { |
| 12880 margin: 0; |
| 12047 padding: 0; | 12881 padding: 0; |
| 12048 font: 400 14px 'Montserrat', sans-serif; | 12882 font: 400 14px 'Montserrat', sans-serif; |
| 12049 color: #333; | 12883 color: #333; |
| 12050 box-sizing: border-box; | 12884 box-sizing: border-box; |
| 12051 } | 12885 } |
| 12052 | 12886 |
| 12053 .content { | 12887 .content { |
| 12054 padding-left: 10%; | 12888 padding-left: 10%; |
| 12055 font: 400 14px 'Montserrat', sans-serif; | 12889 font: 400 14px 'Montserrat', sans-serif; |
| 12056 } | 12890 } |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12091 color: #0489c3; | 12925 color: #0489c3; |
| 12092 text-decoration: none; | 12926 text-decoration: none; |
| 12093 } | 12927 } |
| 12094 | 12928 |
| 12095 a:hover { | 12929 a:hover { |
| 12096 text-decoration: underline; | 12930 text-decoration: underline; |
| 12097 } | 12931 } |
| 12098 | 12932 |
| 12099 em { | 12933 em { |
| 12100 color: inherit; | 12934 color: inherit; |
| 12101 font-style:italic; | 12935 font-style: italic; |
| 12936 } |
| 12937 |
| 12938 b { |
| 12939 color: inherit; |
| 12940 font-weight: bold; |
| 12102 } | 12941 } |
| 12103 | 12942 |
| 12104 hr { | 12943 hr { |
| 12105 margin-top: 20px; | 12944 margin-top: 20px; |
| 12106 margin-bottom: 20px; | 12945 margin-bottom: 20px; |
| 12107 border: 0; | 12946 border: 0; |
| 12108 border-top: 1px solid #eee; | 12947 border-top: 1px solid #eee; |
| 12109 height: 0; | 12948 height: 0; |
| 12110 box-sizing: content-box; | 12949 box-sizing: content-box; |
| 12111 } | 12950 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12264 background-color: #f5f5f5; | 13103 background-color: #f5f5f5; |
| 12265 border: 1px solid #e3e3e3; | 13104 border: 1px solid #e3e3e3; |
| 12266 border-radius: 4px; | 13105 border-radius: 4px; |
| 12267 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 13106 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 12268 } | 13107 } |
| 12269 | 13108 |
| 12270 .break-wrap { | 13109 .break-wrap { |
| 12271 word-wrap: break-word; | 13110 word-wrap: break-word; |
| 12272 } | 13111 } |
| 12273 </style> | 13112 </style> |
| 12274 <nav-bar> | 13113 <nav-bar> |
| 12275 <top-nav-menu></top-nav-menu> | 13114 <top-nav-menu></top-nav-menu> |
| 12276 <isolate-nav-menu isolate="{{ script.isolate }}"> | 13115 <isolate-nav-menu isolate="{{ profile.isolate }}"></isolate-nav-menu> |
| 12277 </isolate-nav-menu> | 13116 <nav-menu link="{{ profile.isolate.relativeHashLink('profile') }}" anchor=
"cpu profile" last="{{ true }}"></nav-menu> |
| 12278 <nav-menu link="." anchor="{{ script.name }}" last="{{ true }}"> | 13117 <nav-refresh callback="{{ refresh }}"></nav-refresh> |
| 12279 <li> | 13118 </nav-bar> |
| 12280 <input type="checkbox" checked="{{ showCoverage }}"> | 13119 <style> |
| 12281 <label>Show Coverage Data</label> | 13120 .table { |
| 12282 </li> | 13121 border-collapse: collapse!important; |
| 12283 </nav-menu> | 13122 width: 100%; |
| 12284 <nav-refresh callback="{{ refreshCoverage }}" label="Refresh Coverage"></nav
-refresh> | 13123 margin-bottom: 20px |
| 12285 <nav-refresh callback="{{ refresh }}"> | 13124 } |
| 12286 </nav-refresh> | 13125 .table thead > tr > th, |
| 12287 </nav-bar> | 13126 .table tbody > tr > th, |
| 13127 .table tfoot > tr > th, |
| 13128 .table thead > tr > td, |
| 13129 .table tbody > tr > td, |
| 13130 .table tfoot > tr > td { |
| 13131 padding: 8px; |
| 13132 vertical-align: top; |
| 13133 } |
| 13134 .table thead > tr > th { |
| 13135 vertical-align: bottom; |
| 13136 text-align: left; |
| 13137 border-bottom:2px solid #ddd; |
| 13138 } |
| 12288 | 13139 |
| 12289 <script-inset id="scriptInset" script="{{ script }}" pos="{{ script.firstToken
Pos }}" endpos="{{ script.lastTokenPos }}"> | 13140 tr:hover > td { |
| 12290 <h1>script {{ script.name }}</h1> | 13141 background-color: #FFF3E3; |
| 12291 </script-inset> | 13142 } |
| 12292 </template> | 13143 .rowColor0 { |
| 13144 background-color: #FFE9CC; |
| 13145 } |
| 13146 .rowColor1 { |
| 13147 background-color: #FFDEB2; |
| 13148 } |
| 13149 .rowColor2 { |
| 13150 background-color: #FFD399; |
| 13151 } |
| 13152 .rowColor3 { |
| 13153 background-color: #FFC87F; |
| 13154 } |
| 13155 .rowColor4 { |
| 13156 background-color: #FFBD66; |
| 13157 } |
| 13158 .rowColor5 { |
| 13159 background-color: #FFB24C; |
| 13160 } |
| 13161 .rowColor6 { |
| 13162 background-color: #FFA733; |
| 13163 } |
| 13164 .rowColor7 { |
| 13165 background-color: #FF9C19; |
| 13166 } |
| 13167 .rowColor8 { |
| 13168 background-color: #FF9100; |
| 13169 } |
| 12293 | 13170 |
| 13171 .tooltip { |
| 13172 display: block; |
| 13173 position: absolute; |
| 13174 visibility: hidden; |
| 13175 opacity: 0; |
| 13176 transition: visibility 0s linear 0.5s; |
| 13177 transition: opacity .4s ease-in-out; |
| 13178 } |
| 13179 |
| 13180 tr:hover .tooltip { |
| 13181 display: block; |
| 13182 position: absolute; |
| 13183 top: 100%; |
| 13184 right: 100%; |
| 13185 visibility: visible; |
| 13186 z-index: 999; |
| 13187 width: 400px; |
| 13188 color: #ffffff; |
| 13189 background-color: #0489c3; |
| 13190 border-top-right-radius: 8px; |
| 13191 border-top-left-radius: 8px; |
| 13192 border-bottom-right-radius: 8px; |
| 13193 border-bottom-left-radius: 8px; |
| 13194 transition: visibility 0s linear 0.5s; |
| 13195 transition: opacity .4s ease-in-out; |
| 13196 opacity: 1; |
| 13197 } |
| 13198 |
| 13199 .white { |
| 13200 color: #ffffff; |
| 13201 } |
| 13202 |
| 13203 </style> |
| 13204 <div class="content"> |
| 13205 <h1>Sampled CPU profile</h1> |
| 13206 <div class="memberList"> |
| 13207 <div class="memberItem"> |
| 13208 <div class="memberName">Timestamp</div> |
| 13209 <div class="memberValue">{{ refreshTime }}</div> |
| 13210 </div> |
| 13211 <div class="memberItem"> |
| 13212 <div class="memberName">Time span</div> |
| 13213 <div class="memberValue">{{ timeSpan }}</div> |
| 13214 </div> |
| 13215 <div class="memberItem"> |
| 13216 <div class="memberName">Sample count</div> |
| 13217 <div class="memberValue">{{ sampleCount }}</div> |
| 13218 </div> |
| 13219 <div class="memberItem"> |
| 13220 <div class="memberName">Sample rate</div> |
| 13221 <div class="memberValue">{{ sampleRate }} Hz</div> |
| 13222 </div> |
| 13223 <div class="memberItem"> |
| 13224 <div class="memberName">Sample depth</div> |
| 13225 <div class="memberValue">{{ sampleDepth }} stack frames</div> |
| 13226 </div> |
| 13227 <div class="memberItem"> |
| 13228 <div class="memberName">Display cutoff</div> |
| 13229 <div class="memberValue">{{ displayCutoff }}</div> |
| 13230 </div> |
| 13231 <div class="memberItem"> |
| 13232 <div class="memberName">Tags</div> |
| 13233 <div class="memberValue"> |
| 13234 <select value="{{tagSelector}}"> |
| 13235 <option value="uv">User > VM</option> |
| 13236 <option value="u">User</option> |
| 13237 <option value="vu">VM > User</option> |
| 13238 <option value="v">VM</option> |
| 13239 <option value="hide">None</option> |
| 13240 </select> |
| 13241 </div> |
| 13242 </div> |
| 13243 </div> |
| 13244 <hr> |
| 13245 <table id="tableTree" class="table"> |
| 13246 <thead> |
| 13247 <tr> |
| 13248 <th>Method</th> |
| 13249 <th>Self</th> |
| 13250 </tr> |
| 13251 </thead> |
| 13252 <tbody> |
| 13253 <tr template="" repeat="{{row in tree.rows }}" style="{{}}"> |
| 13254 <td on-click="{{toggleExpanded}}" class="{{ coloring(row) }}" style=
"{{ padding(row) }}"> |
| 13255 <span id="expand" style="{{ row.expanderStyle }}">{{ row.expander
}}</span> |
| 13256 <div style="position: relative;display: inline"> |
| 13257 {{row.columns[0]}} |
| 13258 </div> |
| 13259 <code-ref ref="{{ row.code }}"></code-ref> |
| 13260 </td> |
| 13261 <td class="{{ coloring(row) }}" style="position: relative"> |
| 13262 {{row.columns[1]}} |
| 13263 <div class="tooltip"> |
| 13264 <div class="memberList"> |
| 13265 <div class="memberItem"> |
| 13266 <div class="memberName white">Kind</div> |
| 13267 <div class="memberValue white">{{ row.tipKind }}</div> |
| 13268 </div> |
| 13269 <div class="memberItem"> |
| 13270 <div class="memberName white">Percent of Parent</div> |
| 13271 <div class="memberValue white">{{ row.tipParent }}</div> |
| 13272 </div> |
| 13273 <div class="memberItem"> |
| 13274 <div class="memberName white">Sample Count</div> |
| 13275 <div class="memberValue white">{{ row.tipTicks }} ({{ row.tip
Exclusive }})</div> |
| 13276 </div> |
| 13277 <div class="memberItem"> |
| 13278 <div class="memberName white">Approximate Execution Time</div
> |
| 13279 <div class="memberValue white">{{ row.tipTime }}</div> |
| 13280 </div> |
| 13281 </div> |
| 13282 </div> |
| 13283 </td> |
| 13284 </tr> |
| 13285 </tbody> |
| 13286 </table> |
| 13287 </div> |
| 13288 </template> |
| 13289 |
| 12294 </polymer-element> | 13290 </polymer-element> |
| 12295 | 13291 |
| 12296 | 13292 |
| 12297 | 13293 |
| 12298 | 13294 |
| 12299 | 13295 <polymer-element name="script-view" extends="observatory-element"> |
| 12300 | 13296 <template> |
| 12301 | 13297 <style> |
| 12302 | |
| 12303 | |
| 12304 | |
| 12305 <polymer-element name="stack-frame" extends="observatory-element"> | |
| 12306 <template> | |
| 12307 <style> | |
| 12308 /* Global styles */ | 13298 /* Global styles */ |
| 12309 * { | 13299 * { |
| 12310 margin: 0; | 13300 margin: 0; |
| 12311 padding: 0; | 13301 padding: 0; |
| 12312 font: 400 14px 'Montserrat', sans-serif; | 13302 font: 400 14px 'Montserrat', sans-serif; |
| 12313 color: #333; | 13303 color: #333; |
| 12314 box-sizing: border-box; | 13304 box-sizing: border-box; |
| 12315 } | 13305 } |
| 12316 | 13306 |
| 12317 .content { | 13307 .content { |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12355 color: #0489c3; | 13345 color: #0489c3; |
| 12356 text-decoration: none; | 13346 text-decoration: none; |
| 12357 } | 13347 } |
| 12358 | 13348 |
| 12359 a:hover { | 13349 a:hover { |
| 12360 text-decoration: underline; | 13350 text-decoration: underline; |
| 12361 } | 13351 } |
| 12362 | 13352 |
| 12363 em { | 13353 em { |
| 12364 color: inherit; | 13354 color: inherit; |
| 12365 font-style:italic; | 13355 font-style: italic; |
| 13356 } |
| 13357 |
| 13358 b { |
| 13359 color: inherit; |
| 13360 font-weight: bold; |
| 12366 } | 13361 } |
| 12367 | 13362 |
| 12368 hr { | 13363 hr { |
| 12369 margin-top: 20px; | 13364 margin-top: 20px; |
| 12370 margin-bottom: 20px; | 13365 margin-bottom: 20px; |
| 12371 border: 0; | 13366 border: 0; |
| 12372 border-top: 1px solid #eee; | 13367 border-top: 1px solid #eee; |
| 12373 height: 0; | 13368 height: 0; |
| 12374 box-sizing: content-box; | 13369 box-sizing: content-box; |
| 12375 } | 13370 } |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12528 background-color: #f5f5f5; | 13523 background-color: #f5f5f5; |
| 12529 border: 1px solid #e3e3e3; | 13524 border: 1px solid #e3e3e3; |
| 12530 border-radius: 4px; | 13525 border-radius: 4px; |
| 12531 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); | 13526 box-shadow: inset 0 1px 1px rgba(0,0,0,0.05); |
| 12532 } | 13527 } |
| 12533 | 13528 |
| 12534 .break-wrap { | 13529 .break-wrap { |
| 12535 word-wrap: break-word; | 13530 word-wrap: break-word; |
| 12536 } | 13531 } |
| 12537 </style> | 13532 </style> |
| 12538 <div class="flex-row"> | 13533 <nav-bar> |
| 12539 <div class="flex-item-fixed-1-12"> | 13534 <top-nav-menu></top-nav-menu> |
| 12540 </div> | 13535 <isolate-nav-menu isolate="{{ script.isolate }}"> |
| 12541 <div class="flex-item-fixed-1-12"> | 13536 </isolate-nav-menu> |
| 12542 #{{ frame['depth'] }} | 13537 <nav-menu link="." anchor="{{ script.name }}" last="{{ true }}"> |
| 12543 </div> | 13538 <li> |
| 12544 <div class="flex-item-fixed-9-12"> | 13539 <input type="checkbox" checked="{{ showCoverage }}"> |
| 12545 <function-ref ref="{{ frame['function'] }}"></function-ref> | 13540 <label>Show Coverage Data</label> |
| 12546 ( <script-ref ref="{{ frame['script'] }}" pos="{{ frame['tokenPos'] }}
"> | 13541 </li> |
| 12547 </script-ref> ) | 13542 </nav-menu> |
| 13543 <nav-refresh callback="{{ refreshCoverage }}" label="Refresh Coverage"></nav
-refresh> |
| 13544 <nav-refresh callback="{{ refresh }}"> |
| 13545 </nav-refresh> |
| 13546 </nav-bar> |
| 12548 | 13547 |
| 12549 <curly-block> | 13548 <script-inset id="scriptInset" script="{{ script }}" pos="{{ script.firstToken
Pos }}" endpos="{{ script.lastTokenPos }}"> |
| 12550 <div class="memberList"> | 13549 <h1>script {{ script.name }}</h1> |
| 12551 <template repeat="{{ v in frame['vars'] }}"> | 13550 </script-inset> |
| 12552 <div class="memberItem"> | 13551 </template> |
| 12553 <div class="memberName">{{ v['name']}}</div> | 13552 |
| 12554 <div class="memberValue"> | 13553 </polymer-element> |
| 12555 <instance-ref ref="{{ v['value'] }}"></instance-ref> | 13554 |
| 12556 </div> | |
| 12557 </div> | |
| 12558 </template> | |
| 12559 </div> | |
| 12560 </curly-block> | |
| 12561 </div> | |
| 12562 <div class="flex-item-fixed-1-12"> | |
| 12563 </div> | |
| 12564 </div> | |
| 12565 </template> | |
| 12566 | 13555 |
| 12567 </polymer-element> | 13556 |
| 13557 |
| 12568 <polymer-element name="stack-trace" extends="observatory-element"> | 13558 <polymer-element name="stack-trace" extends="observatory-element"> |
| 12569 <template> | 13559 <template> |
| 12570 <style> | 13560 <style> |
| 12571 /* Global styles */ | 13561 /* Global styles */ |
| 12572 * { | 13562 * { |
| 12573 margin: 0; | 13563 margin: 0; |
| 12574 padding: 0; | 13564 padding: 0; |
| 12575 font: 400 14px 'Montserrat', sans-serif; | 13565 font: 400 14px 'Montserrat', sans-serif; |
| 12576 color: #333; | 13566 color: #333; |
| 12577 box-sizing: border-box; | 13567 box-sizing: border-box; |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12618 color: #0489c3; | 13608 color: #0489c3; |
| 12619 text-decoration: none; | 13609 text-decoration: none; |
| 12620 } | 13610 } |
| 12621 | 13611 |
| 12622 a:hover { | 13612 a:hover { |
| 12623 text-decoration: underline; | 13613 text-decoration: underline; |
| 12624 } | 13614 } |
| 12625 | 13615 |
| 12626 em { | 13616 em { |
| 12627 color: inherit; | 13617 color: inherit; |
| 12628 font-style:italic; | 13618 font-style: italic; |
| 13619 } |
| 13620 |
| 13621 b { |
| 13622 color: inherit; |
| 13623 font-weight: bold; |
| 12629 } | 13624 } |
| 12630 | 13625 |
| 12631 hr { | 13626 hr { |
| 12632 margin-top: 20px; | 13627 margin-top: 20px; |
| 12633 margin-bottom: 20px; | 13628 margin-bottom: 20px; |
| 12634 border: 0; | 13629 border: 0; |
| 12635 border-top: 1px solid #eee; | 13630 border-top: 1px solid #eee; |
| 12636 height: 0; | 13631 height: 0; |
| 12637 box-sizing: content-box; | 13632 box-sizing: content-box; |
| 12638 } | 13633 } |
| (...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12883 color: #0489c3; | 13878 color: #0489c3; |
| 12884 text-decoration: none; | 13879 text-decoration: none; |
| 12885 } | 13880 } |
| 12886 | 13881 |
| 12887 a:hover { | 13882 a:hover { |
| 12888 text-decoration: underline; | 13883 text-decoration: underline; |
| 12889 } | 13884 } |
| 12890 | 13885 |
| 12891 em { | 13886 em { |
| 12892 color: inherit; | 13887 color: inherit; |
| 12893 font-style:italic; | 13888 font-style: italic; |
| 13889 } |
| 13890 |
| 13891 b { |
| 13892 color: inherit; |
| 13893 font-weight: bold; |
| 12894 } | 13894 } |
| 12895 | 13895 |
| 12896 hr { | 13896 hr { |
| 12897 margin-top: 20px; | 13897 margin-top: 20px; |
| 12898 margin-bottom: 20px; | 13898 margin-bottom: 20px; |
| 12899 border: 0; | 13899 border: 0; |
| 12900 border-top: 1px solid #eee; | 13900 border-top: 1px solid #eee; |
| 12901 height: 0; | 13901 height: 0; |
| 12902 box-sizing: content-box; | 13902 box-sizing: content-box; |
| 12903 } | 13903 } |
| (...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 13081 <div class="memberValue">{{ vm.uptime | formatTime }}</div> | 14081 <div class="memberValue">{{ vm.uptime | formatTime }}</div> |
| 13082 </div> | 14082 </div> |
| 13083 <div class="memberItem"> | 14083 <div class="memberItem"> |
| 13084 <div class="memberName">type checks enabled</div> | 14084 <div class="memberName">type checks enabled</div> |
| 13085 <div class="memberValue">{{ vm.typeChecksEnabled }}</div> | 14085 <div class="memberValue">{{ vm.typeChecksEnabled }}</div> |
| 13086 </div> | 14086 </div> |
| 13087 <div class="memberItem"> | 14087 <div class="memberItem"> |
| 13088 <div class="memberName">asserts enabled</div> | 14088 <div class="memberName">asserts enabled</div> |
| 13089 <div class="memberValue">{{ vm.assertsEnabled }}</div> | 14089 <div class="memberValue">{{ vm.assertsEnabled }}</div> |
| 13090 </div> | 14090 </div> |
| 14091 <br> |
| 14092 <div class="memberItem"> |
| 14093 <div class="memberValue"> |
| 14094 See <a href="#/flags">flags</a> |
| 14095 </div> |
| 14096 </div> |
| 13091 </div> | 14097 </div> |
| 13092 </div> | 14098 </div> |
| 13093 | 14099 |
| 13094 <br> | 14100 <br> |
| 13095 <hr> | 14101 <hr> |
| 13096 | 14102 |
| 13097 <ul class="list-group"> | 14103 <ul class="list-group"> |
| 13098 <template repeat="{{ isolate in vm.isolates }}"> | 14104 <template repeat="{{ isolate in vm.isolates }}"> |
| 13099 <li class="list-group-item"> | 14105 <li class="list-group-item"> |
| 13100 <isolate-summary isolate="{{ isolate }}"></isolate-summary> | 14106 <isolate-summary isolate="{{ isolate }}"></isolate-summary> |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 13177 color: #0489c3; | 14183 color: #0489c3; |
| 13178 text-decoration: none; | 14184 text-decoration: none; |
| 13179 } | 14185 } |
| 13180 | 14186 |
| 13181 a:hover { | 14187 a:hover { |
| 13182 text-decoration: underline; | 14188 text-decoration: underline; |
| 13183 } | 14189 } |
| 13184 | 14190 |
| 13185 em { | 14191 em { |
| 13186 color: inherit; | 14192 color: inherit; |
| 13187 font-style:italic; | 14193 font-style: italic; |
| 14194 } |
| 14195 |
| 14196 b { |
| 14197 color: inherit; |
| 14198 font-weight: bold; |
| 13188 } | 14199 } |
| 13189 | 14200 |
| 13190 hr { | 14201 hr { |
| 13191 margin-top: 20px; | 14202 margin-top: 20px; |
| 13192 margin-bottom: 20px; | 14203 margin-bottom: 20px; |
| 13193 border: 0; | 14204 border: 0; |
| 13194 border-top: 1px solid #eee; | 14205 border-top: 1px solid #eee; |
| 13195 height: 0; | 14206 height: 0; |
| 13196 box-sizing: content-box; | 14207 box-sizing: content-box; |
| 13197 } | 14208 } |
| (...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 13427 color: #0489c3; | 14438 color: #0489c3; |
| 13428 text-decoration: none; | 14439 text-decoration: none; |
| 13429 } | 14440 } |
| 13430 | 14441 |
| 13431 a:hover { | 14442 a:hover { |
| 13432 text-decoration: underline; | 14443 text-decoration: underline; |
| 13433 } | 14444 } |
| 13434 | 14445 |
| 13435 em { | 14446 em { |
| 13436 color: inherit; | 14447 color: inherit; |
| 13437 font-style:italic; | 14448 font-style: italic; |
| 14449 } |
| 14450 |
| 14451 b { |
| 14452 color: inherit; |
| 14453 font-weight: bold; |
| 13438 } | 14454 } |
| 13439 | 14455 |
| 13440 hr { | 14456 hr { |
| 13441 margin-top: 20px; | 14457 margin-top: 20px; |
| 13442 margin-bottom: 20px; | 14458 margin-bottom: 20px; |
| 13443 border: 0; | 14459 border: 0; |
| 13444 border-top: 1px solid #eee; | 14460 border-top: 1px solid #eee; |
| 13445 height: 0; | 14461 height: 0; |
| 13446 box-sizing: content-box; | 14462 box-sizing: content-box; |
| 13447 } | 14463 } |
| (...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 13672 color: #0489c3; | 14688 color: #0489c3; |
| 13673 text-decoration: none; | 14689 text-decoration: none; |
| 13674 } | 14690 } |
| 13675 | 14691 |
| 13676 a:hover { | 14692 a:hover { |
| 13677 text-decoration: underline; | 14693 text-decoration: underline; |
| 13678 } | 14694 } |
| 13679 | 14695 |
| 13680 em { | 14696 em { |
| 13681 color: inherit; | 14697 color: inherit; |
| 13682 font-style:italic; | 14698 font-style: italic; |
| 14699 } |
| 14700 |
| 14701 b { |
| 14702 color: inherit; |
| 14703 font-weight: bold; |
| 13683 } | 14704 } |
| 13684 | 14705 |
| 13685 hr { | 14706 hr { |
| 13686 margin-top: 20px; | 14707 margin-top: 20px; |
| 13687 margin-bottom: 20px; | 14708 margin-bottom: 20px; |
| 13688 border: 0; | 14709 border: 0; |
| 13689 border-top: 1px solid #eee; | 14710 border-top: 1px solid #eee; |
| 13690 height: 0; | 14711 height: 0; |
| 13691 box-sizing: content-box; | 14712 box-sizing: content-box; |
| 13692 } | 14713 } |
| (...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 13854 </style> | 14875 </style> |
| 13855 <a href="{{ url }}">{{ ref.name }}</a> | 14876 <a href="{{ url }}">{{ ref.name }}</a> |
| 13856 </template> | 14877 </template> |
| 13857 | 14878 |
| 13858 </polymer-element> | 14879 </polymer-element> |
| 13859 | 14880 |
| 13860 | 14881 |
| 13861 <observatory-application></observatory-application> | 14882 <observatory-application></observatory-application> |
| 13862 | 14883 |
| 13863 <script src="index.html_bootstrap.dart.js"></script></body></html> | 14884 <script src="index.html_bootstrap.dart.js"></script></body></html> |
| OLD | NEW |