mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-02-03 09:45:22 +03:00
Add timepicker component
This commit is contained in:
parent
e015f48e1c
commit
88ca1df702
52
web/src/components/TimePicker.jsx
Normal file
52
web/src/components/TimePicker.jsx
Normal file
@ -0,0 +1,52 @@
|
||||
import { useState } from 'preact/hooks';
|
||||
|
||||
const hours = ["00:00", "01:00", "02:00", "03:00", "04:00", "05:00", "06:00", "07:00", "08:00", "09:00", "10:00", "11:00", "12:00", "13:00", "14:00", "16:00", "17:00", "18:00", "19:00", "20:00", "21:00", "22:00", "23:00", "24:00"]
|
||||
|
||||
export default function TimePicker({ onChange, timeRange }) {
|
||||
const [state, setState] = useState({
|
||||
after: timeRange["after"] ?? "24:00",
|
||||
before: timeRange["before"] ?? "00:00",
|
||||
});
|
||||
|
||||
const onTimeSelect = (newAfter, newBefore) => {
|
||||
setState({ after: newAfter, before: newBefore });
|
||||
|
||||
if (onChange) {
|
||||
onChange(`${newAfter},${newBefore}`);
|
||||
}
|
||||
};
|
||||
|
||||
return (
|
||||
<div className="w-full flex justify-start flex-shrink m-1">
|
||||
<div className="m-1">
|
||||
<div className="text-center font-semibold p-2">After:</div>
|
||||
<select
|
||||
className="basis-1/5 cursor-pointer rounded dark:bg-slate-800"
|
||||
value={state.after}
|
||||
onChange={(e) => onTimeSelect(e.target.value, state.before)}
|
||||
>
|
||||
{hours.map((item) => (
|
||||
<option key={item} value={item}>
|
||||
{item}
|
||||
</option>
|
||||
))}
|
||||
</select>
|
||||
</div>
|
||||
<div className="m-1">
|
||||
<div className="text-center font-semibold p-2">Before:</div>
|
||||
<select
|
||||
className="basis-1/2 cursor-pointer rounded dark:bg-slate-800"
|
||||
value={state.before}
|
||||
onChange={(e) => onTimeSelect(state.after, e.target.value)}
|
||||
>
|
||||
{hours.map((item) => (
|
||||
<option key={item} value={item}>
|
||||
{item}
|
||||
</option>
|
||||
))}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user