File tree Expand file tree Collapse file tree 2 files changed +39
-1
lines changed Expand file tree Collapse file tree 2 files changed +39
-1
lines changed Original file line number Diff line number Diff line change @@ -858,7 +858,9 @@ function InnerRangePicker<DateType>(props: RangePickerProps<DateType>) {
858858 prefixCls,
859859 components,
860860 needConfirmButton,
861- okDisabled : ! getValue ( selectedValue , mergedActivePickerIndex ) ,
861+ okDisabled :
862+ ! getValue ( selectedValue , mergedActivePickerIndex ) ||
863+ ( disabledDate && disabledDate ( selectedValue [ mergedActivePickerIndex ] ) ) ,
862864 locale,
863865 rangeList,
864866 onOk : ( ) => {
Original file line number Diff line number Diff line change @@ -1501,4 +1501,40 @@ describe('Picker.Range', () => {
15011501 wrapper . closePicker ( 1 ) ;
15021502 } ) ;
15031503 } ) ;
1504+
1505+ // https://github.com/ant-design/ant-design/issues/25746
1506+ it ( 'ok button should be disabled when disabledDate is true' , ( ) => {
1507+ const disabledDate = ( ) => {
1508+ // Can not select days before today and today
1509+ return true ;
1510+ } ;
1511+ const wrapper = mount (
1512+ < MomentRangePicker
1513+ showTime
1514+ disabledDate = { disabledDate }
1515+ defaultValue = { [ getMoment ( '2020-07-24' ) , getMoment ( '2020-08-24' ) ] }
1516+ /> ,
1517+ ) ;
1518+
1519+ wrapper . openPicker ( ) ;
1520+
1521+ expect ( wrapper . find ( '.rc-picker-ok button' ) . props ( ) . disabled ) . toBeTruthy ( ) ;
1522+
1523+ wrapper
1524+ . find ( 'PickerPanel' )
1525+ . first ( )
1526+ . find ( '.rc-picker-time-panel-column' )
1527+ . first ( )
1528+ . find ( 'li' )
1529+ . at ( 6 )
1530+ . simulate ( 'click' ) ;
1531+
1532+ expect (
1533+ wrapper
1534+ . find ( 'input' )
1535+ . first ( )
1536+ . props ( ) . value ,
1537+ ) . toEqual ( '2020-07-24 06:00:00' ) ;
1538+ expect ( wrapper . find ( '.rc-picker-ok button' ) . props ( ) . disabled ) . toBeTruthy ( ) ;
1539+ } ) ;
15041540} ) ;
You can’t perform that action at this time.
0 commit comments