Skip to content

Commit da29e68

Browse files
authored
Merge 14997d0 into 1d0a25f
2 parents 1d0a25f + 14997d0 commit da29e68

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

src/hooks/useRangeDisabled.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ export default function useRangeDisabled<DateType>(
4343

4444
const disabledStartDate = React.useCallback(
4545
(date: DateType) => {
46-
if (disabledDate && disabledDate(date)) {
46+
if (disabled[0] || (disabledDate && disabledDate(date))) {
4747
return true;
4848
}
4949

@@ -75,7 +75,8 @@ export default function useRangeDisabled<DateType>(
7575

7676
const disabledEndDate = React.useCallback(
7777
(date: DateType) => {
78-
if (disabledDate && disabledDate(date)) {
78+
79+
if (disabled[1] || (disabledDate && disabledDate(date))) {
7980
return true;
8081
}
8182

tests/range.spec.tsx

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -252,14 +252,22 @@ describe('Picker.Range', () => {
252252
});
253253

254254
it('should close panel when finish choose panel and next is disabled with disabled = [false, true]/[true,false]', () => {
255-
const { baseElement, container } = render(<MomentRangePicker disabled={[false, true]} />);
255+
const { baseElement } = render(<MomentRangePicker disabled={[false, true]} />);
256256
expect(baseElement.querySelectorAll('.rc-picker-input')).toHaveLength(2);
257257
fireEvent.click(baseElement.querySelectorAll('.rc-picker-input')[0]);
258258
expect(baseElement.querySelector('.rc-picker-dropdown-hidden')).toBeFalsy();
259259
fireEvent.click(baseElement.querySelector('.rc-picker-cell-inner'));
260260
expect(baseElement.querySelector('.rc-picker-dropdown-hidden')).toBeTruthy();
261261
});
262262

263+
it('panel can not be clicked with open and disabled', () => {
264+
const onChange = jest.fn();
265+
const { baseElement } = render(<MomentRangePicker disabled open onChange={onChange} />);
266+
expect(baseElement.querySelector('.rc-picker-cell')).toBeTruthy();
267+
fireEvent.click(baseElement.querySelector('.rc-picker-cell'));
268+
expect(onChange).not.toBeCalled();
269+
});
270+
263271
it('startDate will have disabledDate when endDate is not selectable', () => {
264272
const onChange = jest.fn();
265273
const { container } = render(

0 commit comments

Comments
 (0)