Skip to content

Commit 1aa6f16

Browse files
JohnGao818gaoshenshen
and
gaoshenshen
authored
fix(TimePicker2): fix RangePicker wrong minutes and seconds disabled (alibaba-fusion#3771), close alibaba-fusion#3766
Co-authored-by: gaoshenshen <gss01175277@alibaba-inc.com>
1 parent d9fe8ba commit 1aa6f16

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

src/time-picker2/panel.jsx

+7-4
Original file line numberDiff line numberDiff line change
@@ -156,13 +156,16 @@ class TimePickerPanel extends Component {
156156
const v0 = value[0];
157157
const v1 = value[1];
158158

159+
const hoursEqual = () => v0 && v1 && v0.hour() === v1.hour();
160+
const minutesEqual = () => v0 && v1 && v0.hour() === v1.hour() && v0.minute() === v1.minute();
161+
159162
disableds.newDisabledHours[0] = h => (v1 && h > v1.hour()) || dHours.indexOf(h) > -1;
160-
disableds.newDisabledMinutes[0] = m => (v1 && m > v1.minute()) || dMinutes.indexOf(m) > -1;
161-
disableds.newDisabledSeconds[0] = s => (v1 && s > v1.second()) || dSeconds.indexOf(s) > -1;
163+
disableds.newDisabledMinutes[0] = m => (v1 && (hoursEqual() && m > v1.minute())) || dMinutes.indexOf(m) > -1;
164+
disableds.newDisabledSeconds[0] = s => (v1 && (minutesEqual() && s > v1.second())) || dSeconds.indexOf(s) > -1;
162165

163166
disableds.newDisabledHours[1] = h => (v0 && h < v0.hour()) || dHours.indexOf(h) > -1;
164-
disableds.newDisabledMinutes[1] = m => (v0 && m < v0.minute()) || dMinutes.indexOf(m) > -1;
165-
disableds.newDisabledSeconds[1] = s => (v0 && s < v0.second()) || dSeconds.indexOf(s) > -1;
167+
disableds.newDisabledMinutes[1] = m => (v0 && m < (hoursEqual() && v0.minute())) || dMinutes.indexOf(m) > -1;
168+
disableds.newDisabledSeconds[1] = s => (v0 && (minutesEqual() && s < v0.second())) || dSeconds.indexOf(s) > -1;
166169

167170
return disableds;
168171
};

0 commit comments

Comments
 (0)