| Index: pkg/analysis_server/lib/src/status/pages.dart
|
| diff --git a/pkg/analysis_server/lib/src/status/pages.dart b/pkg/analysis_server/lib/src/status/pages.dart
|
| index dae51025d2f37c817a73124a0f090bb1db6cd2d7..096032f23923cc01369775e114f2099cbc5ba982 100644
|
| --- a/pkg/analysis_server/lib/src/status/pages.dart
|
| +++ b/pkg/analysis_server/lib/src/status/pages.dart
|
| @@ -5,6 +5,8 @@
|
| import 'dart:convert';
|
| import 'dart:io';
|
|
|
| +import 'package:intl/intl.dart';
|
| +
|
| /// Contains a collection of Pages.
|
| abstract class Site {
|
| final String title;
|
| @@ -107,8 +109,8 @@ abstract class Page {
|
| buf.writeln('<h4>${raw ? text : escape(text)}</h4>');
|
| }
|
|
|
| - void ul<T>(Iterable<T> items, void gen(T item)) {
|
| - buf.writeln('<ul>');
|
| + void ul<T>(Iterable<T> items, void gen(T item), {String classes}) {
|
| + buf.writeln('<ul${classes == null ? '' : ' class=$classes'}>');
|
| for (T item in items) {
|
| buf.write('<li>');
|
| gen(item);
|
| @@ -156,14 +158,10 @@ abstract class Page {
|
|
|
| String escape(String text) => text == null ? '' : HTML_ESCAPE.convert(text);
|
|
|
| -String printInteger(int value) {
|
| - return value.toString();
|
| -}
|
| +final NumberFormat numberFormat = new NumberFormat.decimalPattern();
|
|
|
| -String printMilliseconds(num value) {
|
| - return '${value.toStringAsFixed(1)} ms';
|
| -}
|
| +String printInteger(int value) => numberFormat.format(value);
|
|
|
| -String printPercentage(num value) {
|
| - return '${(value * 100).toStringAsFixed(1)}%';
|
| -}
|
| +String printMilliseconds(num value) => '${numberFormat.format(value)} ms';
|
| +
|
| +String printPercentage(num value) => '${(value * 100).toStringAsFixed(1)}%';
|
|
|