Index: third_party/pkg/angular/demo/todo/web/todo.dart |
diff --git a/third_party/pkg/angular/demo/todo/web/todo.dart b/third_party/pkg/angular/demo/todo/web/todo.dart |
deleted file mode 100644 |
index 289500a823b82ca359f41ae22df5d9e395ea88b9..0000000000000000000000000000000000000000 |
--- a/third_party/pkg/angular/demo/todo/web/todo.dart |
+++ /dev/null |
@@ -1,91 +0,0 @@ |
-library todo; |
- |
-import 'package:angular/angular.dart'; |
- |
- |
-class Item { |
- String text; |
- bool done; |
- |
- Item([this.text = '', this.done = false]); |
- |
- bool get isEmpty => text.isEmpty; |
- |
- Item clone() => new Item(text, done); |
- |
- void clear() { |
- text = ''; |
- done = false; |
- } |
-} |
- |
- |
-// ServerController interface. Logic in main.dart determines which |
-// implementation we should use. |
-abstract class ServerController { |
- init(TodoController todo); |
-} |
- |
- |
-// An implementation of ServerController that does nothing. |
-class NoServerController implements ServerController { |
- init(TodoController todo) { } |
-} |
- |
- |
-// An implementation of ServerController that fetches items from |
-// the server over HTTP. |
-class HttpServerController implements ServerController { |
- final Http _http; |
- HttpServerController(this._http); |
- |
- init(TodoController todo) { |
- _http(method: 'GET', url: '/todos').then((HttpResponse data) { |
- data.data.forEach((d) { |
- todo.items.add(new Item(d["text"], d["done"])); |
- }); |
- }); |
- } |
-} |
- |
- |
-@NgController( |
- selector: '[todo-controller]', |
- publishAs: 'todo') |
-class TodoController { |
- var items = <Item>[]; |
- Item newItem; |
- |
- TodoController(ServerController serverController) { |
- newItem = new Item(); |
- items = [ |
- new Item('Write Angular in Dart', true), |
- new Item('Write Dart in Angular'), |
- new Item('Do something useful') |
- ]; |
- |
- serverController.init(this); |
- } |
- |
- // workaround for https://github.com/angular/angular.dart/issues/37 |
- dynamic operator [](String key) => key == 'newItem' ? newItem : null; |
- |
- void add() { |
- if (newItem.isEmpty) return; |
- |
- items.add(newItem.clone()); |
- newItem.clear(); |
- } |
- |
- void markAllDone() { |
- items.forEach((item) => item.done = true); |
- } |
- |
- void archiveDone() { |
- items.removeWhere((item) => item.done); |
- } |
- |
- String classFor(Item item) => item.done ? 'done' : ''; |
- |
- int remaining() => items.fold(0, (count, item) => count += item.done ? 0 : 1); |
-} |