11import { isPresent } from 'angular2/src/facade/lang' ;
2- import { Observable , ObservableWrapper } from 'angular2/src/facade/async' ;
2+ import { Observable , ObservableController , ObservableWrapper } from 'angular2/src/facade/async' ;
33import { StringMap , StringMapWrapper , ListWrapper , List } from 'angular2/src/facade/collection' ;
44import { Validators } from './validators' ;
55
@@ -21,40 +21,40 @@ export const INVALID = "INVALID";
2121export class AbstractControl {
2222 _value :any ;
2323 _status:string ;
24- _errors ;
24+ _errors: StringMap ;
2525 _pristine:boolean ;
2626 _parent:any ; /* ControlGroup | ControlArray */
2727 validator:Function ;
2828
2929 valueChanges:Observable ;
30- _valueChangesController ;
30+ _valueChangesController: ObservableController ;
3131
3232 constructor ( validator :Function ) {
3333 this . validator = validator ;
3434 this . _pristine = true ;
3535 }
3636
37- get value ( ) {
37+ get value ( ) : any {
3838 return this . _value ;
3939 }
4040
41- get status ( ) {
41+ get status ( ) : string {
4242 return this . _status ;
4343 }
4444
45- get valid ( ) {
45+ get valid ( ) : boolean {
4646 return this . _status === VALID ;
4747 }
4848
49- get errors ( ) {
49+ get errors ( ) : StringMap {
5050 return this . _errors ;
5151 }
5252
53- get pristine ( ) {
53+ get pristine ( ) : boolean {
5454 return this . _pristine ;
5555 }
5656
57- get dirty ( ) {
57+ get dirty ( ) : boolean {
5858 return ! this . pristine ;
5959 }
6060
@@ -78,7 +78,7 @@ export class Control extends AbstractControl {
7878 this . valueChanges = ObservableWrapper . createObservable ( this . _valueChangesController ) ;
7979 }
8080
81- updateValue ( value :any ) {
81+ updateValue ( value :any ) : void {
8282 this . _setValueErrorsStatus ( value ) ;
8383 this . _pristine = false ;
8484
@@ -95,13 +95,13 @@ export class Control extends AbstractControl {
9595}
9696
9797export class ControlGroup extends AbstractControl {
98- controls ;
99- optionals ;
98+ controls : StringMap ;
99+ _optionals : StringMap ;
100100
101- constructor ( controls , optionals = null , validator :Function = Validators . group ) {
101+ constructor ( controls : StringMap , optionals : StringMap = null , validator :Function = Validators . group ) {
102102 super ( validator ) ;
103103 this . controls = controls ;
104- this . optionals = isPresent ( optionals ) ? optionals : { } ;
104+ this . _optionals = isPresent ( optionals ) ? optionals : { } ;
105105
106106 this . _valueChangesController = ObservableWrapper . createController ( ) ;
107107 this . valueChanges = ObservableWrapper . createObservable ( this . _valueChangesController ) ;
@@ -110,17 +110,17 @@ export class ControlGroup extends AbstractControl {
110110 this . _setValueErrorsStatus ( ) ;
111111 }
112112
113- include ( controlName :string ) {
114- StringMapWrapper . set ( this . optionals , controlName , true ) ;
113+ include ( controlName :string ) : void {
114+ StringMapWrapper . set ( this . _optionals , controlName , true ) ;
115115 this . _updateValue ( ) ;
116116 }
117117
118- exclude ( controlName :string ) {
119- StringMapWrapper . set ( this . optionals , controlName , false ) ;
118+ exclude ( controlName :string ) : void {
119+ StringMapWrapper . set ( this . _optionals , controlName , false ) ;
120120 this . _updateValue ( ) ;
121121 }
122122
123- contains ( controlName :string ) {
123+ contains ( controlName :string ) : boolean {
124124 var c = StringMapWrapper . contains ( this . controls , controlName ) ;
125125 return c && this . _included ( controlName ) ;
126126 }
@@ -153,7 +153,7 @@ export class ControlGroup extends AbstractControl {
153153 } ) ;
154154 }
155155
156- _reduceChildren ( initValue , fn :Function ) {
156+ _reduceChildren ( initValue : any , fn :Function ) {
157157 var res = initValue ;
158158 StringMapWrapper . forEach ( this . controls , ( control , name ) => {
159159 if ( this . _included ( name ) ) {
@@ -164,15 +164,15 @@ export class ControlGroup extends AbstractControl {
164164 }
165165
166166 _included ( controlName :string ) :boolean {
167- var isOptional = StringMapWrapper . contains ( this . optionals , controlName ) ;
168- return ! isOptional || StringMapWrapper . get ( this . optionals , controlName ) ;
167+ var isOptional = StringMapWrapper . contains ( this . _optionals , controlName ) ;
168+ return ! isOptional || StringMapWrapper . get ( this . _optionals , controlName ) ;
169169 }
170170}
171171
172172export class ControlArray extends AbstractControl {
173173 controls :List ;
174174
175- constructor ( controls :List , validator :Function = Validators . array ) {
175+ constructor ( controls :List < AbstractControl > , validator :Function = Validators . array ) {
176176 super ( validator ) ;
177177 this . controls = controls ;
178178
@@ -183,28 +183,28 @@ export class ControlArray extends AbstractControl {
183183 this . _setValueErrorsStatus ( ) ;
184184 }
185185
186- at ( index :number ) {
186+ at ( index :number ) : AbstractControl {
187187 return this . controls [ index ] ;
188188 }
189189
190- push ( control ) {
190+ push ( control : AbstractControl ) : void {
191191 ListWrapper . push ( this . controls , control ) ;
192192 control . setParent ( this ) ;
193193 this . _updateValue ( ) ;
194194 }
195195
196- insert ( index :number , control ) {
196+ insert ( index :number , control : AbstractControl ) : void {
197197 ListWrapper . insert ( this . controls , index , control ) ;
198198 control . setParent ( this ) ;
199199 this . _updateValue ( ) ;
200200 }
201201
202- removeAt ( index :number ) {
202+ removeAt ( index :number ) : void {
203203 ListWrapper . removeAt ( this . controls , index ) ;
204204 this . _updateValue ( ) ;
205205 }
206206
207- get length ( ) {
207+ get length ( ) : number {
208208 return this . controls . length ;
209209 }
210210
0 commit comments