React FilePond causes rendering loop when compressing images

I am using React FilePond with the FilePondPluginImageExifOrientation and FilePondPluginImagePreview plugins to handle image uploads in my React application. I added a custom image compression logic using the CompressorJS library in the onprocessfile event. However, I am encountering a rendering loop issue, where the component keeps re-rendering in an infinite loop.

const [files, setFiles] = useState([]);
    const [processingFiles, setProcessingFiles] = useState(false);

    // Function to handle image compression
    const compressImage = file => {
        return new Promise((resolve, reject) => {
            new Compressor(file, {
                quality: 0.8,
                success: compressedResult => {
                    resolve(compressedResult);
                },
                error: error => {
                    reject(error);
                },
            });
        });
    };

    // Handle image compression and upload when files change
    useEffect(() => {
        const handleUpload = async () => {
            try {
                if (processingFiles || files.length === 0) return; // No files to compress or already processing

                setProcessingFiles(true); // Set the flag to indicate we are processing files

                const imageFile = files[0].file;
                const compressedImage = await compressImage(imageFile);

                setFiles([{ file: compressedImage }]); // Set the compressed image as the new file for FilePond

                setProcessingFiles(false); // Reset the flag after processing
            } catch (error) {
                console.error('Error compressing image:', error);
                setProcessingFiles(false); // Reset the flag on error as well
            }
        };

        handleUpload();
    }, [files, processingFiles]);

Any insights or suggestions on how to resolve this rendering loop issue and correctly compress images using React FilePond and CompressorJS would be greatly appreciated. Thank you!