mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-02-03 17:55:21 +03:00
add reset state
This commit is contained in:
parent
d12132c88f
commit
36d6c7147a
@ -8,10 +8,10 @@ const TimePicker = ({ dateRange, onChange }) => {
|
|||||||
const [error, setError] = useState(null);
|
const [error, setError] = useState(null);
|
||||||
const [timeRange, setTimeRange] = useState(new Set());
|
const [timeRange, setTimeRange] = useState(new Set());
|
||||||
const [hoverIdx, setHoverIdx] = useState(null);
|
const [hoverIdx, setHoverIdx] = useState(null);
|
||||||
|
const [reset, setReset] = useState(false);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (!dateRange.after) return setTimeRange(new Set());
|
if (reset) return;
|
||||||
if (timeRange.size > 0) return;
|
|
||||||
|
|
||||||
const after = new Date(dateRange.after);
|
const after = new Date(dateRange.after);
|
||||||
const before = new Date(dateRange.before);
|
const before = new Date(dateRange.before);
|
||||||
@ -33,7 +33,7 @@ const TimePicker = ({ dateRange, onChange }) => {
|
|||||||
for (let hour = after.getHours(); hour < beforeOffset; hour++) {
|
for (let hour = after.getHours(); hour < beforeOffset; hour++) {
|
||||||
setTimeRange((timeRange) => timeRange.add(hour));
|
setTimeRange((timeRange) => timeRange.add(hour));
|
||||||
}
|
}
|
||||||
}, [dateRange.after, dateRange.before, timeRange.size]);
|
}, [dateRange, timeRange, reset]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initializes two variables before and after with date objects,
|
* Initializes two variables before and after with date objects,
|
||||||
@ -71,13 +71,16 @@ const TimePicker = ({ dateRange, onChange }) => {
|
|||||||
const _timeRange = new Set([...timeRange]);
|
const _timeRange = new Set([...timeRange]);
|
||||||
_timeRange.add(hour);
|
_timeRange.add(hour);
|
||||||
|
|
||||||
|
// reset error messages
|
||||||
|
setError(null);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if the variable "hour" exists in the "timeRange" set.
|
* Check if the variable "hour" exists in the "timeRange" set.
|
||||||
* If it does, reset the timepicker
|
* If it does, reset the timepicker
|
||||||
*/
|
*/
|
||||||
setError(null);
|
|
||||||
if (timeRange.has(hour)) {
|
if (timeRange.has(hour)) {
|
||||||
setTimeRange(new Set());
|
setTimeRange(new Set());
|
||||||
|
setReset(true);
|
||||||
const resetBefore = before.setDate(after.getDate() + numberOfDaysSelected.size - 1);
|
const resetBefore = before.setDate(after.getDate() + numberOfDaysSelected.size - 1);
|
||||||
return onChange({
|
return onChange({
|
||||||
after: after.setHours(0, 0, 0, 0) / 1000,
|
after: after.setHours(0, 0, 0, 0) / 1000,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user