import {DatePicker} from "@mui/x-date-pickers";
import './customdatetimepicker.scss';
import {Dayjs} from "dayjs";

type CustomDatePickerProps = {
    class?: string
    value: any   //dayjs or string in format: "2025-09-30T00:00:00"
    onChange: any
    readOnly?: boolean
    minDate?: Dayjs
    maxDate?: Dayjs
    hasError?: string
    theme?:string

}

const CustomDatePicker = ({value, onChange,theme='default', readOnly = false, minDate, hasError, maxDate}: CustomDatePickerProps) => {



    return (
        <>

            <DatePicker
                readOnly={readOnly}
                minDate={minDate}
                maxDate={maxDate}
                inputFormat="DD/MM/YYYY"
                value={value}
                onChange={onChange}
                renderInput={({inputRef, inputProps, InputProps}) => {
                    return (
                        <div className={`rendered-date-time theme-${theme}`}>
                            <input ref={inputRef}
                                   {...inputProps}
                                readOnly={readOnly}
                            />
                            {InputProps?.endAdornment}
                        </div>
                    )
                }}
            />
            {hasError && <p className={'error-message'}>{hasError}</p>}
        </>
    );
}

export default CustomDatePicker;
