@@ -28,10 +28,10 @@ function flattenControls(form: AbstractControl): AbstractControl[] {
28
28
For examples use:
29
29
``` typescript
30
30
// returns all dirty abstract controls
31
- extractControls (form ).filter ((control ) => control .dirty );
31
+ flattenControls (form ).filter ((control ) => control .dirty );
32
32
33
33
// mark all controls as touched
34
- extractControls (form ).forEach ((control ) =>
34
+ flattenControls (form ).forEach ((control ) =>
35
35
control .markAsTouched ({ onlySelf: true }));
36
36
```
37
37
@@ -52,7 +52,7 @@ export class AppComponent {
52
52
form: AbstractControl ;
53
53
54
54
get dirtyControls(): AbstractControl [] {
55
- return extractControls (this .form ).filter (control => control .dirty );
55
+ return flattenControls (this .form ).filter (control => control .dirty );
56
56
}
57
57
58
58
constructor (private fb : FormBuilder ) {
@@ -67,16 +67,16 @@ export class AppComponent {
67
67
}
68
68
69
69
markAsDirty(form : AbstractControl ): void {
70
- for (const control of extractControls (this .form )) {
70
+ for (const control of flattenControls (this .form )) {
71
71
control .markAsDirty ({ onlySelf: true });
72
72
}
73
73
}
74
74
}
75
75
76
- function extractControls (form : AbstractControl ): AbstractControl [] {
76
+ function flattenControls (form : AbstractControl ): AbstractControl [] {
77
77
let extracted: AbstractControl [] = [ form ];
78
78
if (form instanceof FormArray || form instanceof FormGroup ) {
79
- const children = Object .values (form .controls ).map (extractControls );
79
+ const children = Object .values (form .controls ).map (flattenControls );
80
80
extracted = extracted .concat (... children );
81
81
}
82
82
return extracted ;
0 commit comments