19 lines
		
	
	
		
			525 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			19 lines
		
	
	
		
			525 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
// #docregion
 | 
						|
import {Injectable}   from 'angular2/core';
 | 
						|
import {ControlGroup, FormBuilder, Validators} from 'angular2/common';
 | 
						|
import {QuestionBase} from './question-base';
 | 
						|
 | 
						|
@Injectable()
 | 
						|
export class QuestionControlService {
 | 
						|
  constructor(private _fb:FormBuilder){ }
 | 
						|
 | 
						|
  toControlGroup(questions:QuestionBase<any>[] ) {
 | 
						|
    let group = {};
 | 
						|
 | 
						|
    questions.forEach(question => {
 | 
						|
      group[question.key] = question.required ? [question.value || '', Validators.required] : [];
 | 
						|
    });
 | 
						|
    return this._fb.group(group);
 | 
						|
  }
 | 
						|
}
 |