Skip to content

Commit c514d88

Browse files
[Additional Fix] Challenges bug bash (#192)
Additional fix for issue_132
1 parent 56ddf82 commit c514d88

File tree

2 files changed

+47
-13
lines changed

2 files changed

+47
-13
lines changed

src/components/DateRangePicker/index.jsx

Lines changed: 43 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,37 @@ function DateRangePicker(props) {
269269
setPreview(null);
270270
};
271271

272+
const onReset = (presetRange) => {
273+
let newStartDate;
274+
let newEndDate;
275+
276+
if (presetRange) {
277+
newStartDate = presetRange.startDate;
278+
newEndDate = presetRange.endDate;
279+
}
280+
281+
setFocusedRange([0, 0]);
282+
283+
setErrors({
284+
startDate: "",
285+
endDate: "",
286+
});
287+
288+
setRangeString({
289+
startDateString: newStartDate
290+
? moment(newStartDate).format("MMM D, YYYY")
291+
: "",
292+
endDateString: newEndDate ? moment(newEndDate).format("MMM D, YYYY") : "",
293+
});
294+
295+
onChange({
296+
startDate: newStartDate ? moment(newStartDate) : null,
297+
endDate: newEndDate ? moment(newEndDate) : null,
298+
});
299+
300+
setIsComponentVisible(false);
301+
}
302+
272303
/**
273304
* Event handler on date selection changes
274305
* @param {Object} newRange nnew range that has endDate and startDate data
@@ -350,13 +381,13 @@ function DateRangePicker(props) {
350381
// - set the active range's background to transparent color
351382
// to prevent the calendar auto focusing on the day of today by default when no
352383
// start date nor end date are set.
353-
// - does not set focus on the empty selection range when mouse leaves.
384+
// - does not set focus on the selection range when mouse leaves.
354385
// ---
355386

356387
// setActiveDate(null);
357-
if (range.startDate || range.endDate) {
358-
setFocusedRange([0, focusedRange[1]]);
359-
}
388+
// if (range.startDate || range.endDate) {
389+
// setFocusedRange([0, focusedRange[1]]);
390+
// }
360391
return;
361392
}
362393

@@ -558,9 +589,13 @@ function DateRangePicker(props) {
558589
<ReactDateRangePicker
559590
focusedRange={focusedRange}
560591
onRangeFocusChange={setFocusedRange}
561-
onChange={(item) =>
562-
onDateRangePickerChange(item.selection || item.active)
563-
}
592+
onChange={(item) => {
593+
if (!preview) {
594+
onReset(item.selection || item.active);
595+
} else {
596+
onDateRangePickerChange(item.selection || item.active);
597+
}
598+
}}
564599
dateDisplayFormat="MM/dd/yyyy"
565600
showDateDisplay={false}
566601
staticRanges={createStaticRanges()}
@@ -578,12 +613,7 @@ function DateRangePicker(props) {
578613
<button
579614
type="button"
580615
styleName="calendar-button"
581-
onClick={() => {
582-
onDateRangePickerChange({
583-
startDate: null,
584-
endDate: null,
585-
});
586-
}}
616+
onClick={onReset}
587617
>
588618
Reset
589619
</button>

src/components/DateRangePicker/style.scss

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -348,6 +348,10 @@ $darkGreen: #0AB88A;;
348348
}
349349
}
350350

351+
.rdrStartEdge.rdrEndEdge ~ .rdrDayNumber span {
352+
color: $tc-black;
353+
}
354+
351355
.rdrDayNumber {
352356
top: 0;
353357
bottom: 0;

0 commit comments

Comments
 (0)