26 lines
		
	
	
		
			575 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			575 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| // #docregion
 | |
| export class QuestionBase<T>{
 | |
|   value:T;
 | |
|   key:string;
 | |
|   label:string;
 | |
|   required:boolean;
 | |
|   order:number;
 | |
|   controlType:string;
 | |
| 
 | |
|   constructor(options:{
 | |
|       value?:T,
 | |
|       key?:string,
 | |
|       label?:string,
 | |
|       required?:boolean,
 | |
|       order?:number,
 | |
|       controlType?:string
 | |
|     } = {}){
 | |
|     this.value = options.value;
 | |
|     this.key = options.key || '';
 | |
|     this.label = options.label || '';
 | |
|     this.required = !!options.required;
 | |
|     this.order = options.order === undefined ? 1 : options.order;
 | |
|     this.controlType = options.controlType || '';
 | |
|   }
 | |
| }
 |