import { forwardRef, Ref, RefObject, useEffect, useState } from "react"; import InputText, { InputTextProps } from "./InputText"; import {ButtonTertiary} from "../buttons/ButtonTertiary"; import UploadDocument from "../uploaders/UploadDocument"; import clsx from "clsx"; import { useApp } from "../../../hooks"; export interface RefInputImage { input: RefObject | RefObject; } type Props = InputTextProps & { darkMode?: boolean; }; const InputImage = (props: Props, ref: Ref) => { const { t } = useApp(); const [showUploadImage, setShowUploadImage] = useState(false); const [image, setImage] = useState(props.value ?? ""); useEffect(() => { if (props.setValue && props.value !== image) { setImage(props.value ?? ""); } // eslint-disable-next-line react-hooks/exhaustive-deps }, [props.value]); useEffect(() => { if (props.setValue && props.value !== image) { props.setValue(image); } // eslint-disable-next-line react-hooks/exhaustive-deps }, [image]); return (
} /> {showUploadImage && ( { setImage(e); setShowUploadImage(false); }} /> )} {!showUploadImage && image && (
{t("models.post.image")}
{ setImage(""); }} > {t("shared.delete")}
)} ); }; export default forwardRef(InputImage);