Here is example player:

1. Comparing value is passed In next example value of the form control must be equal to current time.

Select time {{equalFormControl.errors | controlErrorResolver}}

2. Comparing control value is passed Here are two form controls that are required and end time has to be the same as start time.

Select start time {{equalForm.get('startTime').errors | controlErrorResolver}} Select end time {{equalForm.get('endTime').errors | controlErrorResolver}} Is form valid: {{equalForm.valid}}

1. Comparing value is passed In next example selected time must be strictly greater than current time.

Select time {{greaterFormControl.errors | controlErrorResolver}}

2. Comparing control value is passed Here are two form controls that are required and end time must be strictly greater than start time.

Select start time {{greaterForm.get('startTime').errors | controlErrorResolver}} Select end time {{greaterForm.get('endTime').errors | controlErrorResolver}} Is form valid: {{greaterForm.valid}}

1. Comparing value is passed In next example value of the form control must be greater than or equal to current time.

Select time {{greaterEqualFormControl.errors | controlErrorResolver}}

2. Comparing control value is passed Here are two form controls that are required and end time must be greater than or equal to start time.

Select start time {{greaterEqualForm.get('startTime').errors | controlErrorResolver}} Select end time {{greaterEqualForm.get('endTime').errors | controlErrorResolver}} Is form valid: {{greaterEqualForm.valid}}

1. Comparing value is passed In next example value of the form control must be strictly less than current time.

Select time {{lessFormControl.errors | controlErrorResolver}}

2. Comparing control value is passed Here are two form controls that are required and end time must be strictly less than start time.

Select start time {{lessForm.get('startTime').errors | controlErrorResolver}} Select end time {{lessForm.get('endTime').errors | controlErrorResolver}} Is form valid: {{lessForm.valid}}

1. Comparing value is passed In next example value of the form control must be less than or equal to current time.

Select time {{lessEqualFormControl.errors | controlErrorResolver}}

2. Comparing control value is passed Here are two form controls that are required and end time must be less than or equal to start time.

Select start time {{lessEqualForm.get('startTime').errors | controlErrorResolver}} Select end time {{lessEqualForm.get('endTime').errors | controlErrorResolver}} Is form valid: {{lessEqualForm.valid}}