Step 1 - Create component
Copy @ Control ({
type : 'date-range' ,
})
@ Component ({
selector : 'date-range-input' ,
templateUrl : './date-range-input.component.html' ,
styleUrls : [ './date-range-input.component.scss' ] ,
})
export class DateRangeInputComponent {
@ ControlFactory ()
public static controlFactory (question : Question ) {
return new FormGroup ({
from : new FormControl () ,
until : new FormControl () ,
});
}
constructor (@ Inject ( FORM_CONTROL ) public control : FormGroup ) {}
}
Copy < div [formGroup] = "control" class = "date-range" >
< mat-form-field >
< mat-label >From</ mat-label >
< input [matDatepicker] = "pickerFrom" formControlName = "from" matInput />
< mat-hint >DD.MM.YYYY</ mat-hint >
< mat-datepicker-toggle [for] = "pickerFrom" matSuffix ></ mat-datepicker-toggle >
< mat-datepicker #pickerFrom ></ mat-datepicker >
</ mat-form-field >
< mat-form-field >
< mat-label >Until</ mat-label >
< input [matDatepicker] = "pickerUntil" formControlName = "until" matInput />
< mat-hint >DD.MM.YYYY</ mat-hint >
< mat-datepicker-toggle [for] = "pickerUntil" matSuffix ></ mat-datepicker-toggle >
< mat-datepicker #pickerUntil ></ mat-datepicker >
</ mat-form-field >
</ div >
Copy FastFormsModule .forRoot ({
controls : [DateRangeInputComponent] ,
});
Copy FastFormsModule .forChild ({
controls : [DateRangeInputComponent] ,
});