angular / angular/components

bug(MatDateRangeInput): validation fails to update if end date gets set to after start date

Open
#24,075 5 comments 2 reactions 0 assignees View on GitHub
area: material/datepicker P3
Dominant language
TypeScript
Stars
25k
Forks
6.8k
Avg merge
1d 8h
Merged PRs (30d)
91

Description

### Is this a regression?

- [ ] Yes, this behavior used to work in the previous version

### The previous version in which this bug was not present was

_No response_

### Description

When manually entering the start date to a date after the end date, you get a validation error "Invalid start date" which is correct and expected. However, if you correct the end date to a date that is after the start date the validation doesn't seem to update and still shows "Invalid start date".

### Reproduction

~~https://stackblitz.com/run?file=src/app/date-range-picker-forms-example.ts~~
https://stackblitz.com/edit/angular-ivy-a3ezpw?file=src/app/app.component.html

Steps to reproduce:
1. Set start date to 12/1/2021 and end date to 12/2/2021
2. Set start date to 12/3/2021
3. Set end date to 12/4/2021

### Expected Behavior

As soon as the end date is set to after the start date, validation should update and hide the error.

### Actual Behavior

"invalid start date" error is still shown.

### Environment

- Angular: ^12.2.9
- CDK/Material: ^12.2.9
- TypeScript: ^3.7.5
- Browser(s): Chrome
- Operating System (e.g. Windows, macOS, Ubuntu): macOS

Contributor guide

Open the contributing guide

Research direction

Start with the linked StackBlitz reproduction and inspect MatDateRangeInput validation while following the listed steps. Confirm that correcting the end date clears the existing "Invalid start date" error, then verify the behavior in the reproduction.

Written by the indexing model from the issue text.

Assessment

Tech stack
angular, typescript
Domain
frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.