Skip to content

Commit a9517e4

Browse files
Merge pull request #6078 from Hacker0x01/fix/issue-5391-type-discriminated-union
fix: improve DatePickerProps discriminated union type inference
2 parents f318d4b + b38a660 commit a9517e4

File tree

2 files changed

+8
-9
lines changed

2 files changed

+8
-9
lines changed

src/index.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -218,8 +218,8 @@ export type DatePickerProps = OmitUnion<
218218
) => void;
219219
} & (
220220
| {
221-
selectsRange?: never;
222-
selectsMultiple?: never;
221+
selectsRange?: false | undefined;
222+
selectsMultiple?: false | undefined;
223223
formatMultipleDates?: never;
224224
onChange?: (
225225
date: Date | null,
@@ -230,7 +230,7 @@ export type DatePickerProps = OmitUnion<
230230
}
231231
| {
232232
selectsRange: true;
233-
selectsMultiple?: never;
233+
selectsMultiple?: false | undefined;
234234
formatMultipleDates?: never;
235235
onChange?: (
236236
date: [Date | null, Date | null],
@@ -240,7 +240,7 @@ export type DatePickerProps = OmitUnion<
240240
) => void;
241241
}
242242
| {
243-
selectsRange?: never;
243+
selectsRange?: false | undefined;
244244
selectsMultiple: true;
245245
formatMultipleDates?: (
246246
dates: Date[],

src/test/multiple_selected_dates.test.tsx

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,7 @@ describe("Multiple Dates Selected", function () {
1414
extraProps: Partial<
1515
Pick<
1616
DatePickerProps,
17-
| "selectsMultiple"
18-
| "shouldCloseOnSelect"
19-
| "disabledKeyboardNavigation"
20-
| "onSelect"
17+
"shouldCloseOnSelect" | "disabledKeyboardNavigation" | "onSelect"
2118
>
2219
> &
2320
OmitUnion<
@@ -28,7 +25,9 @@ describe("Multiple Dates Selected", function () {
2825
| "disabledKeyboardNavigation"
2926
| "onSelect"
3027
| "selectsRange"
31-
>,
28+
> & {
29+
selectsMultiple?: true;
30+
},
3231
) {
3332
return render(
3433
<DatePicker

0 commit comments

Comments
 (0)