import { TRANSFORMS } from "@hey/data/constants"; import sanitizeDStorageUrl from "@hey/helpers/sanitizeDStorageUrl"; import type { SyntheticEvent } from "react"; import Cropper from "react-easy-crop"; import ChooseFile from "@/components/Shared/ChooseFile"; import { Button, Image, Modal } from "@/components/Shared/UI"; import cn from "@/helpers/cn"; import useImageCropUpload from "@/hooks/useImageCropUpload"; interface AvatarUploadProps { src: string; setSrc: (src: string) => void; isSmall?: boolean; } const AvatarUpload = ({ src, setSrc, isSmall = false }: AvatarUploadProps) => { const { pictureSrc, crop, setCrop, zoom, setZoom, showModal, uploading, uploadedPicture, renderPictureUrl, onFileChange, onCropComplete, handleUploadAndSave, handleModalClose } = useImageCropUpload({ aspect: 1, label: "avatar", setSrc, src, transform: TRANSFORMS.AVATAR_BIG }); return ( <>