Skip to content

Commit f655df2

Browse files
authored
fix: RangePicker should keep disabled (#133)
1 parent 2f23d75 commit f655df2

File tree

3 files changed

+15
-20
lines changed

3 files changed

+15
-20
lines changed

src/PickerPanel.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,7 @@ function PickerPanel<DateType>(props: PickerPanelProps<DateType>) {
347347
onViewDateChange: setViewDate,
348348
sourceMode,
349349
onPanelChange: onInternalPanelChange,
350-
disabledDate: picker === mergedMode ? disabledDate : undefined,
350+
disabledDate: mergedMode !== 'decade' ? disabledDate : undefined,
351351
};
352352
delete pickerProps.onChange;
353353
delete pickerProps.onSelect;

tests/panel.spec.tsx

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -315,25 +315,6 @@ describe('Picker.Panel', () => {
315315
expect(onPanelChange).toHaveBeenCalled();
316316
});
317317

318-
// decade is not a picker, but we still test here in case will support
319-
it('picker', () => {
320-
const onPanelChange = jest.fn();
321-
const wrapper = mount(
322-
<MomentPickerPanel
323-
picker={'decade' as any}
324-
mode="decade"
325-
onPanelChange={onPanelChange}
326-
disabledDate={date => date.year() === 1900}
327-
/>,
328-
);
329-
330-
wrapper.selectCell('1900-1909');
331-
expect(onPanelChange).not.toHaveBeenCalled();
332-
333-
wrapper.selectCell('1910-1919');
334-
expect(onPanelChange).toHaveBeenCalled();
335-
});
336-
337318
it('not trigger when same panel', () => {
338319
const onPanelChange = jest.fn();
339320
const wrapper = mount(<MomentPickerPanel onPanelChange={onPanelChange} />);

tests/range.spec.tsx

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1744,4 +1744,18 @@ describe('Picker.Range', () => {
17441744
.simulate('click');
17451745
expect(wrapper.find('.rc-picker-year-btn').text()).toEqual('1990');
17461746
});
1747+
1748+
// https://github.com/ant-design/ant-design/issues/26390
1749+
it('month panel should be disabled', () => {
1750+
const wrapper = mount(<MomentRangePicker />);
1751+
wrapper.openPicker();
1752+
wrapper.selectCell(15);
1753+
1754+
wrapper
1755+
.find('.rc-picker-month-btn')
1756+
.first()
1757+
.simulate('click');
1758+
expect(wrapper.findCell('Jan').hasClass('rc-picker-cell-disabled')).toBeTruthy();
1759+
expect(wrapper.findCell('Dec').hasClass('rc-picker-cell-disabled')).toBeFalsy();
1760+
});
17471761
});

0 commit comments

Comments
 (0)