// #docplaster // #docregion // #docregion imports import 'package:angular2/core.dart'; import 'app_config.dart'; import 'car/car_component.dart'; import 'heroes/heroes_component.dart'; import 'logger_service.dart'; import 'user_service.dart'; //PENDING: check whether we intend to hide injector_component.dart & providers_component.dart; if so, change docregion name? // #enddocregion imports import 'injector_component.dart'; import 'providers_component.dart'; @Component( selector: 'my-app', template: '''

{{title}}

User

{{userInfo}}

''', directives: const [ CarComponent, HeroesComponent, InjectorComponent, ProvidersComponent ], // #docregion providers providers: const [ Logger, UserService, const Provider(AppConfig, useValue: config1)] // #enddocregion providers ) class AppComponent { final UserService _userService; final String title; //#docregion ctor AppComponent(AppConfig config, this._userService) : title = config.title; // #enddocregion ctor bool get isAuthorized { return user.isAuthorized; } void nextUser() { _userService.getNewUser(); } User get user { return _userService.user; } String get userInfo => 'Current user, ${user.name}, is' '${isAuthorized ? "" : " not"} authorized. '; } // #enddocregion