dynamic values for image picker

This commit is contained in:
PhilReact 2025-04-01 22:00:32 +03:00
parent 994ac1e5bf
commit fa97fd2fec

View File

@ -13,6 +13,8 @@ type Mode = "single" | "multi";
interface CommonProps { interface CommonProps {
children: React.ReactNode; children: React.ReactNode;
mode?: Mode; mode?: Mode;
quality?: number;
maxWidth?: number;
} }
interface SingleModeProps extends CommonProps { interface SingleModeProps extends CommonProps {
@ -30,6 +32,8 @@ type ImageUploaderProps = SingleModeProps | MultiModeProps;
export const ImagePicker: React.FC<ImageUploaderProps> = ({ export const ImagePicker: React.FC<ImageUploaderProps> = ({
children, children,
onPick, onPick,
quality = 0.6,
maxWidth= 1200,
mode = "single", mode = "single",
}) => { }) => {
const onDrop = useCallback( const onDrop = useCallback(
@ -52,8 +56,8 @@ export const ImagePicker: React.FC<ImageUploaderProps> = ({
} else { } else {
fileToConvert = await new Promise<File>((resolve, reject) => { fileToConvert = await new Promise<File>((resolve, reject) => {
new Compressor(image, { new Compressor(image, {
quality: 0.6, quality,
maxWidth: 1200, maxWidth,
mimeType: "image/webp", mimeType: "image/webp",
success(result) { success(result) {
resolve( resolve(