import { useRef, useState } from "react";
import { AdapterDayjs } from "@mui/x-date-pickers/AdapterDayjs";
import { DesktopTimePicker, LocalizationProvider } from "@mui/x-date-pickers";
import { handleTwoLength } from "@/helper";
import ClockField from "@/components/icons/ClockField";
function TimePickerField({ dataChange, isVacation, disable, timeStart, data }) {
const input = useRef();
const [value, setValue] = useState("00:00");
const [isOpen, setIsOpen] = useState(false);
const openTimePicker = () => setIsOpen(true);
const closeTimePicker = () => setIsOpen(false);
return (
{
if (clockType === "hours") {
const { idx, is_morgen } = dataChange;
const value =
data[idx][is_morgen ? "morning_time" : "evening_time"][0];
const hourSelected = value ? +value.split(":")[0] : false;
const disableMinHour =
timeStart || !value ? false : hourSelected + 1 > timeValue.$H;
return dataChange.is_morgen
? !(16 > timeValue.$H && timeValue.$H > 5 && !disableMinHour)
: !(24 > timeValue.$H && timeValue.$H > 11 && !disableMinHour);
}
}}
renderInput={(params) => {
return ;
}}
views={["hours", "minutes"]}
placeholder="انتخاب کنید..."
onChange={(e) => {
const hours = e.$H;
const minute = e.$m;
const newValue = `${handleTwoLength(hours)}:${handleTwoLength(
minute
)}`;
const newData = data;
const { idx, is_morgen } = dataChange;
newData[idx][is_morgen ? "morning_time" : "evening_time"][
timeStart ? 0 : 1
] = newValue;
setValue(newValue);
}}
sx={{
"& .MuiFormLabel-root": {
top: "-4px !important",
},
"& .MuiInputBase-input": { padding: "12.5px 14px" },
"& .MuiOutlinedInput-notchedOutline": {
border: "1px solid #D7D7D7 !important",
},
"& .MuiInputBase-root": {
borderRadius: "8px !important",
},
".Mui-focused": {
"& .MuiOutlinedInput-notchedOutline": {
border: "1px solid #5559CE !important",
transition: "0.5s all",
},
},
"& .muirtl-jv54yp-MuiList-root-MuiMultiSectionDigitalClockSection-root::after":
{
display: "none !important",
},
}}
/>
{value}
);
}
export default TimePickerField;